はじめに Claude Codeをはじめとした AIコーディングエージェントが普及するなか、こんな疑問を持ったことはないでしょうか。 「.envは読むな」とシステムプロンプトに書いてある。でも、プロンプトインジェクションで言い方を変えれば読まれる、という話を聞いた。じゃあどうやって管理すればいいの? この記事では、その疑問に正面から答えます。結論から言えば── 「禁止命令で守ろうとする」設計自体を捨てることが解決策です。 問題の構造:なぜ「禁止」だけでは防げないのか AIは「禁止」を意図で判断する LLM(大規模言語モデル)は、すべての入力テキストをフラットなコンテキストとして処理します。「システム指示」と「ユーザー入力」と「外部取得コンテンツ」を区別するよう設計されていますが、表現の巧みさによってその境界が曖昧になります。 これはアーキテクチャ上の制約であり、現時点では完全に解決されてい

