AIにコードを書かせると、余計な修正を加えたり無秩序な構造を生み出したりする。Claude Codeでの開発において、現在の課題は単なるコード生成能力の高さではない。
勝敗を分けるのは、AIに設計思想や絶対原則をどう教え込み永続化させるかだ。追加38,000行という大規模なコード移行を外部挙動の差分ゼロで完遂した現場でも、鍵となったのはエージェントのメモリに絶対ルールを刻む手法だった。
AIの無秩序な暴走を防ぎ、プロジェクトの秩序を維持しながら開発を自動化する手法を紐解く。
SNS運用を自動化しませんか?
ThreadPostなら、投稿作成・画像生成・スケジュール管理までAIがサポート。
AIエージェント開発は「コード生成」から「設計原則のメモリ固定」へ
AIエージェントにコードを書かせる際、開発者が直面する壁はコード生成能力の低さではない。AIが余計な変更を加えたり、セッションを跨ぐと設計方針を忘れて無秩序な出力を繰り返したりすることだ。
直近の報告では、決済に関わる重要ドメインのレガシーコード移行をAIエージェントとともに行った事例がある。このプロジェクトで追加されたコード量は約38,000行にのぼり、削減されたコード量は約13,000行を記録した。
変更対象となったファイル数は232ファイルに達する。開発期間は1か月、実施されたセッション数は59回を超えた。
この大規模な開発で外部挙動の変更を一切許さない「未承認の差分ゼロ」を達成した裏には、原則の永続化という手法があった。セッションが切り替わるたびにAIが指示を忘れるのを防ぐため、絶対ルールや決定事項をメモリファイルとして明文化し、毎回AIに読み込ませる運用が徹底された。
しんたろー:
Claude Codeでコードを書いていると、セッションが切れた途端に「さっき決めた設計」を忘れることがある。AIは親切心で余計なコードを書き足すため、メモリにルールを叩き込んでおかないと暴走する。
一方で、AIの記憶構造を拡張する試みも進んでいる。モデル自体が固定され毎回初対面になるAIに対し、過去の会話を整理するJKRiverのような動的記憶レイヤーの実証が報告された。会話から得た情報を仮説として扱い、何度も確認された情報を確定へと昇格させ、矛盾した過去の記憶を閉じることで、プロジェクトの文脈を維持する仕組みだ。
さらに、AIが吐き出すコードのカオス化を防ぐための設計フレームワークも登場している。AIが解釈しやすい命名規則や階層ルールを定義したLism CSSのような設計理論をプロンプトやメモリに読み込ませ、AIの出力品質を一定に保つ取り組みが始まっている。
一連の動向は、AI開発の主導権が「コード生成の速さ」から「指示と制約の永続化」へとシフトしたことを示している。
AIを放置するとコードは壊れる。作るべきは「AIのガードレール」だ
AIエージェントによる開発速度は未知の領域に入った。現場で起きている本質的な課題はコード生成のスピードではない。AIに何をさせ、何をさせないかという意思決定の伝達コストだ。
AIを野放しにすると、指示していない部分のリファクタリングを勝手に始めたり、インターネット上の統一感のないコードを真似して破綻した構造のコードを吐き出したりする。
この問題を突破するために必要なのが、プロジェクト単位の制約(メモリ)とドメイン単位の設計理論(フレームワーク)の融合だ。
ThreadPostの開発を進める中で、AIに対する指示の賞味期限の短さを感じる。プロンプトで緻密な条件を指定しても、セッションが切り替わればAIは過去の決定事項を忘れる。毎回初対面のAIに前提条件を説明し直す作業は、開発効率を落とす。
ここで威力を発揮するのが、AIのメモリにプロジェクトの絶対原則を永続化させる手法だ。
例えば、既存システムの変更において未承認の差分ゼロという絶対ルールをテキストとして固定する。セッション開始時にこのメモリを読み込ませる運用を作るだけで、AIは勝手なコード改変を止め、指示通りに動く確率が高まる。
さらに、会話から情報を仮説として蓄積し、検証を重ねて確定データへと昇格させる動的記憶レイヤーや、特定の設計思想を明文化したAI専用のガイドラインを読み込ませるアプローチも強力だ。AIの記憶と設計ルールが合体することで、AIはプロジェクトの文脈を理解したチームメンバーとして機能し始める。
しんたろー:
Claude Codeで開発していると、AIが気を利かせて頼んでいないリファクタリングを挟んでくることがある。指示してないコード修正のせいで別の機能が落ちて、原因特定に時間を費やした経験がある。AIには「頼んだこと以外は変えるな」とルールで縛るのがバグ予防になる。
一方で、現場ではAIの制御可能性に関する温度差も存在する。「AIに複雑な設計ルールを理解させるのは困難だ」という声がある一方で、「原則を文字としてメモリに刻み込めばAIはルールを遵守する」という成功事例もある。
このギャップの原因は明確だ。AIの学習データには世界中のカオスなコードが含まれているため、曖昧な指示を投げると質の低いコードへと引っ張られる。
AIに高度な設計思想を守らせるには、人間側がAIの解釈しやすい構造化したルールを用意しなければならない。抽象的な精神論ではなく、明示的な命名規則や階層ルールをドキュメント化し、それをエージェントの参照メモリに固定する。ここまでお膳立てをして初めて、AIは設計秩序を保ったコードを出力できる。
開発者に求められる役割は、キーボードを叩いてコードを書くことから、AIが踏み越えてはいけない制約条件を定義することへシフトした。
手書きでコードを書く時間を削り、AIに読み込ませる設計ガイドラインや永続化ファイルを整備する。この初期投資を行えるかどうかが、大規模なコード変更を安全に完遂できるか、それともAIが吐き出した保守不能なコードの山に埋もれるかの分岐点になる。今作るべきなのは、コードそのものではなく、AIを正しく走らせるための強固なガードレールだ。
ここまで読んだあなたに
今なら無料で全機能をお試しいただけます。設定後はAIが投稿案を毎日生成。確認して選ぶだけ。
明日から始めるべき「AI向け制約ドキュメント」の整備と運用
AIエージェントを日々の開発に投入するなら、変えるべきはコードの書き方ではなくAIとのコミュニケーション設計だ。開発フローに次の3つのアクションを組み込む。
まず1つ目は、プロジェクト直下にAI用メモリーファイルを配置することだ。Claude Codeなどを運用する際、セッションが切れるたびに絶対ルールを手動で説明するのは時間の浪費になる。「外部から見える挙動の差分ゼロ」といった非妥協的な原則は、最初にファイルへ明記してAIの参照メモリに固定しておく。これだけで、AIが親切心で余計な最適化を加えてバグを生むリスクを削減できる。
2つ目は、セッション引き継ぎログの自動生成と人間の目による選別だ。AIとの作業が長くなると、過去の決定事項は薄れていく。セッション終了時にAIへ「申し送りドキュメント」を出力させ、人間が目を通して手入れする運用を挟む。不要な情報を削る作業を入れるだけで、次のセッションでAIが過去に却下した設計案を再び提案してくる無限ループを回避できる。
3つ目は、設計理論やスタイルのガイドラインの構造化だ。CSSや設計パターンのように、ネット上に曖昧なコードが溢れている領域では、AIに自由に書かせると保守不能なコードが爆誕する。AIに秩序あるコードを出力させたいなら、AIが解釈しやすい形で命名規則や階層ルールを固めた仕様書を用意する必要がある。AIが参照すべき正解の型をあらかじめ渡しておくことが、最も手軽な自衛策になる。
しんたろー:
Claude Codeを使ってると、セッションが変わった瞬間に「さっき決めたこと忘れてる?」という場面に遭遇する。AIの記憶力に頼るより、テキストファイルに制約を書いて読ませる方が確実だ。コードを書かせる前のルール作りこそが、効率化につながる。
これから向き合うべきは、超高速でコードを書くが文脈を忘れやすいAIエージェントだ。単にコードを自動生成させるフェーズは終わった。明日からの開発で差がつくのは、AIが踏み越えてはいけない制約の言語化と、設計思想を正しく引き継がせる仕組みづくりだ。開発者の役割は「コードを書く人」から、AIを制御する「設計のガイド役」へと移行している。
よくある質問
AIエージェントに大規模なリファクタリングを任せる際の最大の注意点は?
最大の罠は、AIの親切心による余計なコード修正だ。AIは良かれと思って頼んでいない最適化を混ぜ込み、予期せぬバグを引き起こす。これを防ぐには「承認のない差分はゼロにする」という絶対ルールをテキストで定義し、毎セッションAIに読み込ませる必要がある。また、セッション終了時にAIが出力した引き継ぎドキュメントを人間が精査し、文脈のノイズを削ぎ落とす運用も欠かせない。
AIにCSSやコンポーネントを書かせるとコードがカオス化するが、回避策はある?
AIはネット上の無秩序なコードを学習しているため、放っておくと雑な実装を吐き出す。対策は、プロジェクト独自の設計規則や命名ルールを構造化した「AI用ガイドライン」を用意することだ。Tailwind CSSのような共通フレームワークを使うだけでなく、「どのレイヤーでどうスタイルを定義するか」を明確にした制約をプロンプトや初期設定で渡すと出力が安定する。曖昧な指示を排除し、AIが迷わない枠組みを先に提示するのがコツだ。
AIに過去の設計決定やプロジェクトの文脈を長期間記憶させる有効な方法は?
外部の記憶レイヤーやセッションを跨ぐメモリ管理ファイルを組み込むのが有効だ。学習済みモデル自体は固定されているため、AIはセッションごとに知識がリセットされる。過去に却下した設計案や独自の制約を構造化されたメモリとして外付けすれば、毎回の説明コストを削れる。会話から事実を抽出して文脈を維持する記憶構造を作れば、AIは頼れる開発パートナーに化ける。
まとめ
AIにコードを書かせる時代から、設計思想を教え込む時代へ。
作るべきは、コードそのものじゃなくAIが逸脱しないためのガードレールだった。制約と記憶をセットで渡せば、AIはただの自動生成ツールから、設計思想を理解するパートナーに変わる。
AIエージェントを自作プロダクトの開発に組み込んでいく試みは、まだまだ始まったばかりだ。僕も自身のThreadPostで、このガードレール運用を突き詰めていく。

この記事が参考になったら、ThreadPostを試してみませんか?
投稿作成・画像生成・スケジュール管理まで、AIがサポートします。
ThreadPostをもっと知る