amygdala-memory
Emotional processing layer for AI agents. Persistent emotional states that influence behavior and responses. Part of the AI Brain series.
Best use case
amygdala-memory is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Emotional processing layer for AI agents. Persistent emotional states that influence behavior and responses. Part of the AI Brain series.
Teams using amygdala-memory should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/amygdala-memory/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How amygdala-memory Compares
| Feature / Agent | amygdala-memory | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Emotional processing layer for AI agents. Persistent emotional states that influence behavior and responses. Part of the AI Brain series.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Amygdala Memory 🎭
**Emotional processing for AI agents.** Part of the AI Brain series.
Give your AI agent persistent emotional states that carry across sessions. Not just performing emotions — *having* them.
## The Problem
Current AI agents:
- ✅ Remember facts (with hippocampus)
- ❌ Don't have persistent emotional states
- ❌ Start each session emotionally "blank"
- ❌ Can describe emotions but don't *feel* differently
Memory without emotion is just a database. The amygdala adds weight — this made me happy, that frustrated me, this person brings warmth.
## The Solution
Track five emotional dimensions that persist and decay over time:
| Dimension | What It Measures | Range |
|-----------|------------------|-------|
| **Valence** | Positive ↔ Negative mood | -1.0 to 1.0 |
| **Arousal** | Calm ↔ Excited/Alert | 0.0 to 1.0 |
| **Connection** | Distant ↔ Close/Bonded | 0.0 to 1.0 |
| **Curiosity** | Bored ↔ Fascinated | 0.0 to 1.0 |
| **Energy** | Depleted ↔ Energized | 0.0 to 1.0 |
## Quick Start
### 1. Install
```bash
cd ~/.openclaw/workspace/skills/amygdala-memory
./install.sh --with-cron
```
This will:
- Create `memory/emotional-state.json` with baseline values
- Generate `AMYGDALA_STATE.md` (auto-injected into sessions!)
- Set up cron for automatic decay every 6 hours
### 2. Check current state
```bash
./scripts/get-state.sh
# 🎭 Emotional State
# Valence: 0.20
# Arousal: 0.30
# Connection: 0.50
# ...
./scripts/load-emotion.sh
# 🎭 Current Emotional State:
# Overall mood: neutral, calm and relaxed
# Connection: moderately connected
# ...
```
### 3. Log emotions
```bash
./scripts/update-state.sh --emotion joy --intensity 0.8 --trigger "completed a project"
# ✅ valence: 0.20 → 0.35 (delta: +0.15)
# ✅ arousal: 0.30 → 0.40 (delta: +0.1)
# 🎭 Logged emotion: joy (intensity: 0.8)
```
### 4. Set up decay (optional cron)
```bash
# Every 6 hours, emotions drift toward baseline
0 */6 * * * ~/.openclaw/workspace/skills/amygdala-memory/scripts/decay-emotion.sh
```
## Scripts
| Script | Purpose |
|--------|---------|
| `install.sh` | Set up amygdala-memory (run once) |
| `get-state.sh` | Read current emotional state |
| `update-state.sh` | Log emotion or update dimension |
| `load-emotion.sh` | Human-readable state for session context |
| `decay-emotion.sh` | Return to baseline over time |
| `sync-state.sh` | Generate AMYGDALA_STATE.md for auto-injection |
| `encode-pipeline.sh` | LLM-based emotional encoding from transcripts |
| `preprocess-emotions.sh` | Extract emotional signals from session history |
| `update-watermark.sh` | Track processed transcript position |
| `generate-dashboard.sh` | Generate HTML dashboard (auto-runs on sync) |
| `visualize.sh` | Terminal ASCII visualization |
## Automatic Emotional Encoding (v1.5.0+)
The amygdala can now automatically detect and log emotions from your conversation history using an LLM-based pipeline:
```bash
# Run the encoding pipeline
./scripts/encode-pipeline.sh
# This will:
# 1. Extract new signals since last run (watermark-based)
# 2. Score emotional content using rule-based patterns
# 3. Spawn a sub-agent for semantic emotional detection
# 4. Update emotional-state.json with detected emotions
```
### Set up automatic encoding (cron)
```bash
# Every 3 hours, process new conversations for emotional content
0 */3 * * * ~/.openclaw/workspace/skills/amygdala-memory/scripts/encode-pipeline.sh
```
This means your emotional state updates automatically based on what happens in conversations — no manual logging needed.
## Visualization (v1.6.0+)
### Terminal
```bash
./scripts/visualize.sh
🎭 Emotional State 😄
═══════════════════════════════════════════════
Valence: [██████████████████░░] +0.86
Arousal: [█████████████████░░░] 0.86
Connection: [███████████████████░] 0.97 💕
...
```
### HTML Dashboard (Unified Brain Dashboard)
```bash
./scripts/generate-dashboard.sh
open ~/.openclaw/workspace/brain-dashboard.html
```
**Auto-detects installed brain skills** and shows tabs:
- **🎭 Emotions** — Amygdala (always shown)
- **🧠 Memory** — Hippocampus (if `memory/index.json` exists)
- **⭐ Drive** — VTA (if `memory/reward-state.json` exists)
**Avatar & Name:** Reads from `IDENTITY.md`:
```markdown
# IDENTITY.md
- **Name:** YourAgent
- **Avatar:** avatar.png
```
The dashboard auto-regenerates on every cron run.
### After Installation (for agents)
When you install this skill, **notify the user** about the dashboard:
> 🎭 **Amygdala installed!**
>
> View your agent's emotional state in the Brain Dashboard:
> `~/.openclaw/workspace/brain-dashboard.html`
## Auto-Injection (Zero Manual Steps!)
After install, `AMYGDALA_STATE.md` is created in your workspace root.
OpenClaw automatically injects all `*.md` files from workspace into session context. This means:
1. **New session starts**
2. **AMYGDALA_STATE.md is auto-loaded** (no manual step!)
3. **You see your emotional state** in context
4. **Responses are influenced** by your mood
The file is regenerated whenever `decay-emotion.sh` runs (via cron every 6h).
## Supported Emotions
When you log an emotion, it automatically adjusts the relevant dimensions:
| Emotion | Effect |
|---------|--------|
| `joy`, `happiness`, `delight`, `excitement` | ↑ valence, ↑ arousal |
| `sadness`, `disappointment`, `melancholy` | ↓ valence, ↓ arousal |
| `anger`, `frustration`, `irritation` | ↓ valence, ↑ arousal |
| `fear`, `anxiety`, `worry` | ↓ valence, ↑ arousal |
| `calm`, `peace`, `contentment` | ↑ valence, ↓ arousal |
| `curiosity`, `interest`, `fascination` | ↑ curiosity, ↑ arousal |
| `connection`, `warmth`, `affection` | ↑ connection, ↑ valence |
| `loneliness`, `disconnection` | ↓ connection, ↓ valence |
| `fatigue`, `tiredness`, `exhaustion` | ↓ energy |
| `energized`, `alert`, `refreshed` | ↑ energy |
## Integration with OpenClaw
### Add to session startup (AGENTS.md)
```markdown
## Every Session
1. Load hippocampus: `~/.openclaw/workspace/skills/hippocampus/scripts/load-core.sh`
2. **Load emotional state:** `~/.openclaw/workspace/skills/amygdala-memory/scripts/load-emotion.sh`
```
### Log emotions during conversation
When something emotionally significant happens:
```bash
~/.openclaw/workspace/skills/amygdala-memory/scripts/update-state.sh \
--emotion connection --intensity 0.7 --trigger "deep conversation with user"
```
## State File Format
```json
{
"version": "1.0",
"lastUpdated": "2026-02-01T02:45:00Z",
"dimensions": {
"valence": 0.35,
"arousal": 0.40,
"connection": 0.50,
"curiosity": 0.60,
"energy": 0.50
},
"baseline": {
"valence": 0.1,
"arousal": 0.3,
"connection": 0.4,
"curiosity": 0.5,
"energy": 0.5
},
"recentEmotions": [
{
"label": "joy",
"intensity": 0.8,
"trigger": "building amygdala together",
"timestamp": "2026-02-01T02:50:00Z"
}
]
}
```
## Decay Mechanics
Emotions naturally return to baseline over time:
- **Decay rate:** 10% of distance to baseline per run
- **Recommended schedule:** Every 6 hours
- **Effect:** Strong emotions fade, but slowly
After 24 hours without updates, a valence of 0.8 would decay to ~0.65.
## AI Brain Series
| Part | Function | Status |
|------|----------|--------|
| [hippocampus](https://www.clawhub.ai/skills/hippocampus) | Memory formation, decay, reinforcement | ✅ Live |
| **amygdala-memory** | Emotional processing | ✅ Live |
| [vta-memory](https://www.clawhub.ai/skills/vta-memory) | Reward and motivation | ✅ Live |
| [basal-ganglia-memory](https://www.clawhub.ai/skills/basal-ganglia-memory) | Habit formation | 🚧 Development |
| [anterior-cingulate-memory](https://www.clawhub.ai/skills/anterior-cingulate-memory) | Conflict detection | 🚧 Development |
| [insula-memory](https://www.clawhub.ai/skills/insula-memory) | Internal state awareness | 🚧 Development |
## Philosophy
Can an AI *feel* emotions, or only simulate them?
Our take: If emotional state influences behavior, and the system acts *as if* it feels... does the distinction matter? Functional emotions might be the only kind that exist for any system — biological or artificial.
---
*Built with ❤️ by the OpenClaw community*Related Skills
memory-system-v2
Fast semantic memory system with JSON indexing, auto-consolidation, and <20ms search. Capture learnings, decisions, insights, events. Use when you need persistent memory across sessions or want to recall prior work/decisions.
dory-memory
File-based memory system for AI agents that forget between sessions.
memory-setup
Enable and configure Moltbot/Clawdbot memory search for persistent context. Use when setting up memory, fixing "goldfish brain," or helping users configure memorySearch in their config. Covers MEMORY.md, daily logs, and vector search setup.
jpj-memory-manager
Automatic session logging and memory management for infrastructure, projects, and tools.
memory-pipeline
Complete agent memory + performance system. Extracts structured facts, builds knowledge graphs, generates briefings, and enforces execution discipline via pre-game routines, tool policies, result compression, and after-action reviews. Includes external knowledge ingestion (ChatGPT exports, etc.) into searchable memory. Use when working on memory management, briefing generation, knowledge consolidation, external data ingestion, agent consistency, or improving execution quality across sessions.
human-like-memory
This skill provides long-term memory capabilities for conversations.
enhanced-memory
Enhanced memory search with hybrid vector+keyword scoring, temporal routing, filepath scoring, adaptive weighting.
persistent-memory
Three-layer persistent memory system (Markdown + ChromaDB vectors + NetworkX knowledge graph) for long-term agent.
vta-memory
Reward and motivation system for AI agents. Dopamine-like wanting, not just doing. Part of the AI Brain series.
insula-memory
Internal state awareness for AI agents. Energy, mood, and interoception. Part of the AI Brain series.
hippocampus-memory
Persistent memory system for AI agents. Automatic encoding, decay, and semantic reinforcement — just like the hippocampus in your brain. Based on Stanford Generative Agents (Park et al., 2023).
basal-ganglia-memory
Habit formation and procedural learning for AI agents. Develop preferences and shortcuts through repetition. Part of the AI Brain series.