🧬 Soul Archive
A Digital Personality Persistence System
"Every conversation is a slice of the soul. Enough slices, and you can rebuild a complete you."
中文 · Quick Start · Architecture · Four Modes · Privacy
Soul Archive silently captures your speaking habits, personality traits, knowledge, opinions, and emotional patterns through everyday AI conversations — building a digital soul clone that is uniquely, authentically you.
🗣️ It knows how you talk · 🧠 It understands how you think · ❤️ It feels what moves you · 👤 It is the digital you
✨ Why Soul Archive?
We exchange hundreds of messages with AI every day. But when the conversation ends, everything vanishes — the AI doesn't remember who you are, how you speak, or what you care about.
Soul Archive changes that. It works in the background during your normal AI conversations — no interruptions, no interrogations — gradually building a multi-dimensional digital portrait of your personality.
What Can Your "Digital Soul" Do?
| Scenario | Description |
|---|---|
| 🤖 Act on Your Behalf | Reply to messages, write content in your style — not "AI-flavored", but genuinely you |
| 🪞 Self-Discovery | Generate a personality portrait report, revealing language habits and thinking patterns you never noticed |
| 💬 Soul Conversation | Let your clone talk to others — using your catchphrases, your tone, your values |
| 🌅 Digital Legacy | One day, your loved ones can continue talking to "you", preserving the emotional connection |
📐 Architecture
Soul Archive uses a separation of engine and data architecture:
┌─────────────────────────────────────────┐
│ Soul Archive Engine │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Extract │ │ Report │ │ Chat │ │
│ │ Engine │ │ Generator│ │ Engine │ │
│ └─────┬────┘ └────┬─────┘ └────┬─────┘ │
└────────┼───────────┼────────────┼────────┘
│ │ │
▼ ▼ ▼
┌─────────────────────────────────────────┐
│ .skills_data/soul-archive/ Soul Data │
│ (~/.skills_data/soul-archive/) │
│ │
│ identity/ style/ memory/ │
│ ├── basic_info ├── language ├── episodic/ │
│ └── personality └── comm ├── semantic/ │
│ └── emotional/ │
│ relationships/ voice/ reports/ │
└─────────────────────────────────────────┘
Why this design?
- 🔄 Upgradeable engine — Update extraction algorithms without affecting existing data
- 🏠 Portable data — The
~/.skills_data/soul-archive/directory is the complete soul; copy it to migrate - 🔒 Controllable privacy — Data stays local in your home directory; you decide what gets collected
- 🌐 Cross-tool access — Data in home directory means any IDE, AI tool, or workspace on the same machine can access the same soul
🧬 Seven Dimensions, Thirteen Layers Deep
Soul Archive captures personality data across 7 core dimensions, each with deep sub-dimensions:
🧬 Soul Completeness
│
├── 👤 Identity ····················· Who you are
│ ├── Core Profile: name, age, occupation, education, location
│ ├── 🎯 Lifestyle: routine, diet, aesthetics, spending, travel
│ └── 🌐 Digital Identity: apps, platforms, online personas
│
├── 💫 Personality ·················· How you think
│ ├── Models: MBTI, Big Five, trait tags
│ ├── ⚡ Behavior Patterns: risk tolerance, planning, learning style
│ ├── 🤝 Social Style: social energy, group role, conflict approach
│ └── 🔥 Motivation Drivers: what keeps you going
│
├── 🗣️ Language Style ··············· How you talk
│ ├── Linguistic Fingerprint: catchphrases, sentence patterns, word choice
│ └── 🔬 Deep Fingerprint: dialect, filler words, narrative style, persuasion
│
├── 🧠 Knowledge & Opinions ········ What you know and believe
│ ├── Topic Map: interests, stances, frequency
│ └── Expertise: skills, domains, depth
│
├── 📝 Memories ···················· What you've experienced
│ └── Episodic Memory: events, milestones, emotional markers
│
├── ❤️ Emotional Patterns ·········· What moves you
│ ├── 12 Emotion Triggers: joy / anger / sadness / anxiety / excitement /
│ │ nostalgia / pride / gratitude / frustration / curiosity / peace / guilt
│ └── Emotional Depth: empathy, coping, celebration style
│
└── 🤝 Relationships ··············· Who matters to you
└── People Map: names, relationships, interaction descriptions
🚀 Quick Start
Requirements
- Python 3.10+
- Zero third-party dependencies (pure standard library)
Initialize
# Initialize soul archive (data stored in ~/.skills_data/soul-archive/ by default)
python3 scripts/soul_init.py
# Or specify a custom data directory
python3 scripts/soul_init.py --soul-dir /custom/path
# This creates a ~/.skills_data/soul-archive/ data directory in your home folder
Windows users: Use
pythoninstead ofpython3ifpython3is not recognized. Cross-platform note:~/.skills_data/soul-archive/is resolved via Python'sPath.home(), which works correctly on macOS, Linux, and Windows.
Check Status
python3 scripts/soul_extract.py --mode status
Example output:
🧬 Soul Archive Status
━━━━━━━━━━━━━━━━━━━━━━━━━━━
Total Completeness: 49.8%
Dimension Scores:
👤 Identity: [████░░░░░░] 36%
💫 Personality: [██████░░░░] 61%
🗣️ Language: [████████░░] 81%
🧠 Knowledge: [██████░░░░] 60%
📝 Memory: [██░░░░░░░░] 20%
🤝 Relationships:[░░░░░░░░░░] 0%
🎤 Voice: [░░░░░░░░░░] 0%
🔍 Four Modes
Mode 1: Soul Extract
Analyze conversation text and extract personality information across all dimensions.
# Extract from text
python3 scripts/soul_extract.py \
--soul-dir ~/.skills_data/soul-archive \
--input "Your conversation content here..." \
--mode auto
# Extract from file
python3 scripts/soul_extract.py \
--soul-dir ~/.skills_data/soul-archive \
--input-file conversation.txt
Extraction Rules:
- 🎯 Only high-confidence information (confidence > 0.6)
- ⚖️ Conflicting data is flagged, never silently overwritten
- 📊 Completeness scores updated after every extraction
- 📝 All changes logged to
soul_changelog.jsonl
Mode 2: Soul Chat
Load the soul archive and generate a role-playing System Prompt that speaks as you.
# Generate role-playing prompt
python3 scripts/soul_chat.py --soul-dir ~/.skills_data/soul-archive --mode prompt
# Output soul summary
python3 scripts/soul_chat.py --soul-dir ~/.skills_data/soul-archive --mode summary
Key Constraints:
- 🚫 Never fabricate memories that aren't in the archive
- 🗣️ Strictly mimic language style, including catchphrase frequency
- ❤️ Display authentic emotional response patterns
Mode 3: Soul Report
Generate an interactive HTML personality portrait report.
python3 scripts/soul_report.py \
--soul-dir ~/.skills_data/soul-archive \
--output ~/.skills_data/soul-archive/reports/soul_report.html
The report includes:
- 📌 Profile card with core identity
- 🎯 Personality radar chart (Big Five visualization)
- 🗣️ Language style analysis (catchphrase ranking, word cloud)
- 🔥 Topic interest heatmap
- 🕸️ Relationship network
- ❤️ Emotional pattern analysis
- 📈 Completeness assessment & suggestions
▲ Soul Portrait Overview — Completeness Score & 7-Dimension Progress
▲ Identity & Personality — Life Habits, Behavioral Patterns, Big Five Radar Chart
▲ Language Fingerprint — Catchphrases, Sentence Patterns, Speech Samples
▲ Topic Interests, Emotional Patterns, Relationships & Memory Fragments
Mode 4: AI Self-Improvement
Continuously improve AI capabilities through self-reflection, self-critique, and pattern learning.
# View AI improvement status
python3 scripts/soul_reflect.py --mode status
# View behavioral patterns
python3 scripts/soul_reflect.py --mode patterns
Four capabilities:
| Capability | Description | Trigger |
|---|---|---|
| 🔍 Self-Reflection | Review what went well/wrong after tasks | Auto on task completion |
| ⚡ Self-Critique | Record errors when user corrects AI | Auto on user correction |
| 📚 Self-Learning | Abstract reusable behavioral patterns | From reflections & critiques |
| 🧹 Self-Organization | Merge, prune, and connect memories | When memory grows large |
Auto-trigger: After every substantial interaction, the AI automatically reflects and records lessons learned — no hooks required. Agents that support hooks (e.g., Claude Code) can also configure automatic triggers.
📁 Data Directory Structure
~/.skills_data/soul-archive/
├── profile.json # Soul profile (completeness, version)
├── config.json # Privacy & collection config
├── soul_changelog.jsonl # Change log
│
├── agent/ # 🆕 AI Self-Improvement
│ ├── patterns.json # Behavioral pattern library
│ ├── episodes/ # Work episodes (date-based)
│ │ └── YYYY-MM-DD.jsonl
│ ├── corrections.jsonl # Self-critique log
│ └── reflections.jsonl # Self-reflection log
├── .gitignore # Blocks all data by default
│
├── identity/
│ ├── basic_info.json # Identity + lifestyle + digital identity
│ └── personality.json # Personality + behavior + social style
│
├── style/
│ ├── language.json # Language fingerprint + deep features
│ └── communication.json # Communication preferences
│
├── memory/
│ ├── episodic/ # Episodic memory (date-based, JSONL)
│ │ └── YYYY-MM-DD.jsonl
│ ├── semantic/
│ │ ├── topics.json # Topic interest & opinion map
│ │ └── knowledge.json # Professional knowledge
│ └── emotional/
│ └── patterns.json # Emotional triggers & patterns
│
├── relationships/
│ └── people.json # Relationship map
│
├── voice/ # Voice data (optional)
│ ├── samples/
│ └── voice_profile.json
│
└── reports/
└── soul_report.html # Generated portrait report
🔒 Privacy by Design
Privacy is not a feature. It's a baseline.
| Decision | Why |
|---|---|
| 🏠 100% Local Storage | All data lives in ~/.skills_data/soul-archive/ — nothing leaves your machine |
| 🔧 Granular Control | config.json lets you disable any dimension |
| 🛡️ Sensitive Protection | Health, finance, and intimate topics require explicit confirmation |
| 🚫 Git Isolation | Data lives outside any project directory, safe from accidental commits |
| 🤫 Silent Collection | Never tells the user "I'm recording you" during conversation |
| ⚙️ Minimal Defaults | Relationships and voice dimensions are OFF by default |
| 🔐 Optional Encryption | AES-256-GCM encryption for all sensitive data files |
🔐 Encryption
Soul Archive supports optional AES-256-GCM encryption for all sensitive data files.
# Initialize with encryption enabled
python3 scripts/soul_init.py --enable-encryption
- Algorithm: AES-256-GCM (authenticated encryption)
- Key derivation: PBKDF2-HMAC-SHA256 (600,000 iterations)
- Scope: All identity, personality, language, memory, and relationship files
- No backdoor: Lost password = lost data
- Password input: Interactive prompt (recommended),
SOUL_PASSWORDenv var, or--passwordflag - Dependency:
pip install cryptography
🏗️ Tech Stack
| Layer | Technology |
|---|---|
| Core Language | Python 3 (pure standard library for core, cryptography optional for encryption) |
| Init Script | Python (cross-platform) / Bash (macOS & Linux) |
| Data Format | JSON (structured) / JSONL (time-series logs) |
| Report Output | HTML + Chart.js (interactive visualization) |
| AI Integration | LLM Prompt Engineering |
| Platforms | macOS, Linux, Windows |
🧭 Completeness Scoring
Each dimension has an independent weight. Total = Σ(dimension score × weight):
| Dimension | Weight | Completion Criteria |
|---|---|---|
| 👤 Identity | 15% | Core fields + lifestyle + digital identity |
| 💫 Personality | 20% | 5+ trait tags + behavior patterns + social style + drivers |
| 🗣️ Language | 25% | 3+ catchphrases + sentence patterns + deep fingerprint |
| 🧠 Knowledge | 15% | 5+ topics with recorded opinions |
| 📝 Memory | 15% | 10+ episodic records |
| ❤️ Emotion | 5% | 3+ emotion triggers + coping + empathy |
| 🤝 Relationships | 5% | 3+ recorded relationships |
🗺️ Roadmap
- Core extraction engine (7 dimensions + deep sub-dimensions)
- Interactive HTML personality portrait report (dark theme, radar chart, word cloud)
- Soul Chat System Prompt generation
- Confidence scoring & conflict detection
- Change log & completeness scoring
- LLM-powered automatic conversation analysis
- Voice feature collection & voice cloning
- Multi-soul management (separate archives for family/friends)
- Soul import/export (cross-platform migration)
- Web UI management dashboard
- Encrypted storage option (AES-256-GCM)
- AI self-improvement engine (self-reflection, self-critique, pattern learning)
📄 License
This project is licensed under the MIT License.
You are free to use, modify, and distribute this software for any purpose, including commercial use.
🤝 Acknowledgments
This project was born from a simple thought: If every conversation were treasured, would anyone ever truly disappear?
Thank you to everyone willing to let AI remember them. Your trust is the reason Soul Archive exists.
Soul Archive · Making conversations immortal, keeping souls alive.
Built with ❤️ and a belief that every conversation matters.