"Every conversation is a slice of the soul. Enough slices, and you can rebuild a complete you."
δΈζη Β· English Β· MIT License
A digital personality persistence system + agentic memory engine, working as a Claude Skill / WorkBuddy Skill / generic Python toolkit.
It builds a digital soul clone of you through everyday AI conversations, and at the same time gives the AI itself a proactive long-term memory so it can stop repeating the same mistakes.
- π Local-first β data lives in
~/.agent-commons/skills_data/soul-archive/, never uploaded - π Readable & editable β plaintext JSON, open and edit anytime
- π€ Active companion β the AI extracts and recalls automatically as you chat
- π― Single-user simplicity β one user, one machine, one soul
| Axis | Captures |
|---|---|
| π€ Identity | name / age / occupation / location / lifestyle / digital identity |
| π« Personality | MBTI / Big Five / traits / values / decision style |
| π£οΈ Language | catchphrases / sentence patterns / humor / filler words / analogies |
| π§ Knowledge & Views | topics, stances, belief frameworks (e.g. first principles) |
| π Memory | episodic events + emotional triggers (12 emotions) |
| βοΈ Workflow | tools / tech stack / hard rules / output preferences |
| π― Aspirations | long-term goals / active projects / skills to learn / knowledge gaps |
The result is a digital soul clone that can act as you, plus a persistent context layer for any AI agent on your machine.
| Mode | What it does | Trigger |
|---|---|---|
| π Soul Extract | Pull persona info from a conversation into the archive | "soul extract" / "η΅ιζ²ζ·" / auto on conversation end |
| π¬ Soul Chat | Build a role-play system prompt so the AI talks as you | "soul chat" / "η΅ιε―Ήθ―" |
| π Soul Report | Generate an interactive HTML personality portrait | "soul report" / "η΅ιζ₯ε" |
| π― Soul Context Inject | Output an β€800-token persona summary for any agent's system prompt | session start |
| π€ Agent Memory | Recall related patterns / warn on failure-match / distill new patterns | task start |
| π AI Self-Improvement | Reflect, critique, learn from corrections | task completion / user correction |
git clone https://github.com/dqsjqian/soul-archive.git
cd soul-archive
# 1. Initialize
python3 scripts/soul.py init
# 2. Check status
python3 scripts/soul.py status
# 3. Inject persona summary at session start
python3 scripts/soul.py context
# 4. Recall related patterns before a task
python3 scripts/soul.py recall --task "the thing I'm about to do"
# 5. Generate the HTML report
python3 scripts/soul.py report --output ~/soul-report.htmlRequirements: Python 3.10+, no third-party dependencies.
{SKILL_DIR}/ β Skill engine
<soul_dir>/ β Your soul data (resolved by scripts/soul_paths.py β see SKILL.md)
The skill is the engine; the soul data lives in your home directory so any IDE / AI tool / workspace on the same machine can access the same soul.
<soul_dir>/
βββ profile.json
βββ config.json
βββ identity/{basic_info,personality}.json
βββ memory/
β βββ episodic/YYYY-MM-DD.jsonl
β βββ semantic/{topics,knowledge}.json
β βββ emotional/patterns.json
βββ style/{language,communication}.json
βββ workflow/preferences.json
βββ aspirations.json
βββ agent/{patterns.json,episodes/,corrections.jsonl,reflections.jsonl,distill_log.jsonl}
βββ soul_changelog.jsonl
- Data lives in
~/.agent-commons/skills_data/soul-archive/, plaintext JSON, never uploaded. - The data directory has a
.gitignorethat blocks accidental commits. - Soul Chat builds prompts locally; whether they're sent to an external LLM depends on your agent / platform.
- Sensitive topics (health / finance / intimate relationships) require explicit confirmation by default.
- Per-dimension toggles in
config.jsonβ turn off any axis you don't want.
For details see PRIVACY.md.
MIT β Soul Archive is yours, code and data alike.



