私の経験では、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文字程度を目安にするとよいでしょう。

参考リンク

 

この記事が気に入ったら
いいね ! しよう