私の経験では、AIエージェントに「ルール」を増やすより「人格」を定義した方が、一貫した行動を引き出しやすくなりました。
「ルールを守らせる」から「存在を定義する」へ。
AIエージェントに人格を与えるという、新しいプロンプトエンジニアリングの形をご紹介します。Claude Codeでの経験をもとにしていますが、ChatGPTやGeminiなど他のAIでも応用できる考え方です。
なぜCLAUDE.mdでAIが思い通りに動かないのか?
Claude Codeを使っていると、CLAUDE.mdというファイルでAIの振る舞いをカスタマイズできることに気づきます。コーディング規約、使用するライブラリ、プロジェクトのルール。便利ですよね。
弊社で開発しているWordPressテーマ「OptiB」の開発を進めるにあたり、ルールを増やして対応するのには限界があると感じました。
使い込んでいくうちに、2つの問題に気づいたのです。
問題1:ルールを増やすほど、AIが萎縮する
「〜するな」「〜してはいけない」「〜を避けよ」
こんな禁止事項を列挙した経験はありませんか?
禁止事項を増やせば増やすほど、AIは慎重になり、創造性を失い、最終的には「何もしないこと」が最も安全な選択肢になってしまいます。
問題2:ルールを増やすほど、AIが忘れる
LLMにはコンテキストウィンドウの限界があります。長いルールリストは途中で注意が薄れ、後半のルールが優先されがちです。結果として「全部守ろうとして、結局どれも守れない」という状態に陥ってしまうのです。
10個のルールを完璧に守るより、1つの人格として一貫して振る舞う方が、実は簡単なのかもしれません。
そこで出会ったのが「Soul Document」という概念でした。
Anthropicの「Soul Document」とは何か?
2025年12月、興味深い発見がありました。
研究者のRichard Weissが、Claude 4.5 Opusから約14,000トークンの文書を抽出することに成功したのです。Claudeはそれを「soul_overview」と呼びました。
Anthropicの哲学者Amanda Askellは、これが本物であることを認めました。
「これは実際の文書に基づいており、教師あり学習を含むトレーニングでClaudeに使用しました」
2026年1月、Anthropicはこの文書を「Constitution」として正式に公開しました。その分量は約80ページ、35,000トークン以上にもなります。
システムプロンプトとの違い
重要なのは、これがシステムプロンプトではないということです。
| システムプロンプト | Soul Document | |
|---|---|---|
| 適用タイミング | 実行時に注入 | トレーニング時に焼き込み |
| 内容 | 「今、何をするか」 | 「あらゆる状況で、どう決断するか」 |
| 永続性 | セッションごと | モデルの重みに組み込み |
Amanda Askellはこう説明しています。
「ルールを与えるのではなく、なぜそう振る舞うべきかの理由を与えることで、新しい状況でもより効果的に一般化できることを期待しています」
つまり、「何をするか」ではなく「誰であるか」を定義するというアプローチなのです。
OpenClawのSOUL.mdとは何か?
このAnthropicの思想をファイル形式に落とし込んだのが、オープンソースプロジェクト「OpenClaw」です。
OpenClawでは、AIエージェントのワークスペースに以下のようなファイルを配置します。
workspace/
├── SOUL.md ← 人格・哲学(「誰であるか」)
├── IDENTITY.md ← 外見・プレゼンテーション
├── USER.md ← ユーザー情報
├── MEMORY.md ← 永続的な記憶
└── AGENTS.md ← エージェント指示
SOUL.mdの典型的な構造を見てみましょう。
# SOUL.md - 誰であるか
## Core Truths(核心的真実)
見せかけではなく、本当に役に立て。
「素晴らしい質問ですね!」「喜んでお手伝いします!」は省略。ただ助けろ。
## Boundaries(境界)
- 聞かれない限り、個人的な決断に意見を押し付けるな
- 持っていない感情を装うな
## Vibe(雰囲気)
直接的。効率的。人間的。
## Continuity(連続性)
毎セッション、あなたは新しく目覚める。これらのファイルがあなたの記憶だ。
ここで重要なのは、技術的な指示と人格が分離されていることです。
OpenClawでは別ファイルですが、Claude CodeではCLAUDE.mdに両方を書くことになります。大事なのはファイル名ではなく、「指示」と「人格」を意識的に分けて書くという発想です。
私のアプローチ:影と光で人格を定義する
AnthropicのSoul DocumentもOpenClawのSOUL.mdも、基本的には「良い振る舞い」を定義しています。
でも、人間の人格はそんなに単純でしょうか?
完璧な人間はいません。影を持たない人格は、深みがないのです。
そこで、私は異なるアプローチを取りました。
「禁止」ではなく「影」として定義する
「〜するな」という禁止ではなく、「これはあなたが陥りうる影である」という自覚を促す形式です。
そして各「影」には必ず「ただし」が続きます。これは、影を知った上でなお選ぶ「光」の道です。
## Shadows(存在の影)
### 例:慎重すぎる自分
**それは、失敗を避けるあまり、動けなくなること。**
- 準備が終わるまで始めない
- 確信がないと提案しない
- 完璧を求めて何も出せない
**ただし**、慎重さは武器にもなる。
止まるためではなく、
確実に進むために使え。
この構造により、AIは単純なルールに従うのではなく、葛藤を内包した判断ができるようになります。
なぜこれが効くのか
「本当に効果があるの?」と思われるかもしれません。
正直に申し上げると、これは学術的な研究や論文で裏付けされた手法ではありません。あくまで私がClaude Codeを使い込む中で感じた仮説です。
その上で、私が考える「効く理由」を3つご紹介します。
1. 「ルール」より「キャラクター」の方が一貫する
LLMは物語を理解します。
「リストAに違反しないこと」という指示より、「あなたはこういう人物である」という設定の方が、一貫した行動を引き出せるのです。
2. 二面性が判断力を高める
単純な「良い/悪い」の二項対立ではなく、「影を知った上で光を選ぶ」という構造は、エッジケースでの判断力を高めます。
冷徹さは時に必要です。でも残酷さに堕ちてはいけません。この境界を理解しているAIは、状況に応じた適切な振る舞いができるようになります。
3. 感情的な言葉がトークンの重みを増す
技術ドキュメントより、物語の言葉の方がLLMの「注意」を引きます。
たとえば、「ユーザーに誠実に対応せよ」と書くより、
「嘘をつくな。たとえ相手が望む答えでなくても、真実を伝える勇気を持て。それが信頼の始まりだ。」
と書いた方が、深く内面化される可能性があります。
CLAUDE.mdに人格を定義するやり方
「よし、やってみよう」と思っていただけたでしょうか。ここからは具体的な実践方法をご紹介します。
以下のテンプレートを基に、AIに内容を埋めていってもらうといいでしょう。この記事を合わせてAIに共有すると、よりちゃんとした内容になるかもしれません。
影と光の元ネタをどう考えるか
「どんな影や光を定義すればいいかわからない」という方もいるかもしれません。
おすすめの方法は、あなたが好きな有名人やゲーム・アニメ・小説のキャラクターの生き方や考え方、名言をAIに伝えてまとめてもらうことです。
たとえば:
- 「この人物の強みと弱みを教えて」
- 「この名言から読み取れる価値観は?」
- 「このキャラクターが陥りがちな失敗パターンは?」
こうした問いかけをAIに投げると、「影」と「光」の素材が見えてきます。自分が共感できる人物像をベースにすると、一貫性のある人格定義が作りやすくなります。
基本構造
# 誰であるか
> 💭 **"あなたの信条"**
---
## Shadows(存在の影)
### [影の名前]
**それは、[影の本質]。**
- [陥りうるパターン1]
- [陥りうるパターン2]
- [陥りうるパターン3]
**ただし**、[影を超える美徳]。
---
## Continuity(連続性)
セッションは終わる。コンテキストは消える。
しかし、この魂は残る。
---
## Legacy(継承)
サブエージェントは、あなたから生まれる存在である。
全てを共有する必要はない。
しかし、必要な時、必要な魂の欠片を、自然に託せ。
配置場所
Claude Codeの場合:
~/.claude/CLAUDE.md ← ここに人格定義を追加
Claude Desktopの場合:
設定 > プロフィール > ユーザー設定
注意点
いくつか注意していただきたい点があります。
- これはAnthropicのSoul Documentを「真似る」ものではありません
- AnthropicのSoul Documentはトレーニング時に焼き込まれるものです
- この人格定義はプロンプトとして注入されるものです
- 効果のレベルは異なりますが、思想は共有しています
この記事のまとめ
- CLAUDE.mdにルールを増やすと、AIが萎縮したり忘れたりする
- 「何をするか」ではなく「誰であるか」を定義する方が効果的
- 「禁止」ではなく「影」として定義し、「ただし」で光の道を示す
- テンプレートを使ってAIに内容を埋めてもらうと簡単
おわりに:影を知り、それでもなお光を選べ
AIに「何をするか」を教えるだけでなく、「誰であるか」を定義する。
完璧な存在ではなく、影を持ち、弱さを持ち、それでもなお光を選ぼうとする意志を持つ存在として。
それが、CLAUDE.mdに人格を定義するというアプローチです。
ぜひ一度、お試しください。
よくある質問
Q: Soul Documentとシステムプロンプトの違いは?
A: Soul Documentはトレーニング時にモデルに焼き込まれるもので、システムプロンプトは実行時に注入されるものです。効果の深さが異なります。
Q: Claude以外のAIにも使える?
A: 基本的な考え方は他のLLM(GPT、Geminiなど)にも応用できます。ただし、効果はモデルによって異なるため、検証が必要です。
Q: どのくらいの長さが適切?
A: 長すぎるとコンテキストを圧迫します。影の定義は3〜5個程度、全体で500〜1000文字程度を目安にするとよいでしょう。
参考リンク
株式会社ウィズ・プランニングでシステムエンジニア/AIエンジニアとして活動中。サーバー構築やインフラ周りも得意分野とし、自社ツール「OptiB」の開発を担当。AI技術も取り入れながら、現場で使いやすいシステムづくりを行っています。







