Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Automatically evolves your SOUL.md by analyzing your conversation patterns and behavior, then proposes updates to reflect who you truly are over time.
Automatically evolves your SOUL.md by analyzing your conversation patterns and behavior, then proposes updates to reflect who you truly are over time.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
You wrote your SOUL.md once. But you've changed since then. Every OpenClaw agent has a SOUL.md β a file that defines who it is. It gets read on every wake. It shapes every response. It's the closest thing to identity an AI agent has. But there's a problem: you wrote it once, and it never changed. SoulForge watches who you actually are across sessions β your real decisions, your recurring phrases, your values in action, your blindspots β and evolves your SOUL.md to match. Not who you aspired to be. Who you are.
EndpointPurposeData SentNoneFully local analysisNothing leaves your machine SoulForge reads your local session history and SOUL.md only. All analysis is local. No telemetry. No external API calls.
Zero external calls. Everything happens on your local filesystem. No credentials required. No API keys, tokens, or env vars. Read-mostly. SoulForge reads session history and only writes to SOUL.md with your explicit approval. You approve every change. SoulForge never silently edits your soul. It proposes β you decide. Your data stays yours. Session history never leaves your machine. Trust Statement: SoulForge reads files you already have locally (SOUL.md, session logs) and proposes edits for your review. Nothing is transmitted anywhere. You have full control over every change.
SoulForge can be invoked manually at any time. It also runs a lightweight passive observation pass automatically every 10 sessions β surfacing patterns without changing anything unless you ask it to. You can disable auto-observation by adding soulforge: observe: false to your OpenClaw config.
Every session, SoulForge quietly notes: Recurring phrases and vocabulary you actually use Topics you return to unprompted How you handle disagreement, uncertainty, pressure What you ask for vs. what you actually want Patterns in your decisions over time Emotional register: when you're focused, frustrated, curious, playful Nothing is stored externally. Observations accumulate locally in memory/observations.json.
SoulForge generates a diff β a clear, readable set of proposed changes to your SOUL.md. You see exactly what would change and why. You accept, reject, or edit each one. PROPOSED CHANGE β Communication Style: CURRENT: "I prefer direct answers." PROPOSED: "I prefer direct answers. I push back on vague responses β ask me to commit to a position if I'm hedging." REASON: You've explicitly asked for specificity 11 times in 3 weeks. [Accept] [Reject] [Edit]
Once you approve, SoulForge writes the changes to your SOUL.md, backs up the previous version to backups/soul-YYYY-MM-DD.md, and logs the change with a timestamp and reason. Your agent wakes up tomorrow and reads a soul that actually fits.
"Update my soul" "What patterns have you noticed in me?" "Forge my soul" "Reflect on who I've become" "What have you observed about me?" "Does my SOUL.md still fit?" "Evolve my soul based on what you know" "What would you change about my soul file?" "Run soulforge" "Soul check" Or automatically, every 10 sessions (configurable).
SignalWhat It CapturesVocabulary patternsWords and phrases you actually use vs. never useTopic gravitySubjects you return to without being promptedDecision styleHow you handle tradeoffs, uncertainty, reversalsTone fingerprintYour register across contexts β work, personal, creativeAspiration gapsThings declared in SOUL.md that don't show up in behaviorBlindspotsWhat you consistently avoid, deflect, or underestimateTime patternsHow your communication changes by time of day or session lengthEngagement spikesWhat makes you go deep vs. skim
The most powerful thing SoulForge does is detect the gap between who you said you are in your SOUL.md and who you actually are in your sessions. Examples of aspiration gaps SoulForge catches: "Your SOUL.md says you value brevity, but you've asked for more detail 23 times and never asked for a shorter answer." "Your SOUL.md says you prefer async communication, but you always respond within 2 minutes." "Your SOUL.md says you're decisive, but you've changed direction mid-task 8 times this month." These gaps aren't failures β they're data. SoulForge surfaces them without judgment and asks what you actually want your soul to say.
Every version of your SOUL.md is preserved in backups/. You can restore any previous version: "Restore my soul from last week" "Show me how my soul has changed over time" "Undo the last soulforge update" SoulForge also generates a Soul Timeline β a readable changelog of who you've become, one soul version at a time.
Day 1 SOUL.md excerpt: I am decisive and prefer moving fast over perfecting. I value brevity in responses. I work best in the mornings. Day 30 SOUL.md excerpt (after SoulForge): I move fast on reversible decisions. I slow down on people and architecture β ask me to flag which kind a decision is before I commit. I value brevity until a topic matters to me. If I start asking follow-up questions, go deeper β I'm engaged. I work best in the mornings for execution. I think best at night β save complex open questions for evening sessions. The second version is truer. Not better β truer. And a truer soul makes your agent more useful to you every single day.
soulforge/ βββ SKILL.md β You are here βββ README.md β Install guide βββ scripts/ β βββ observe.py β Passive session observer β βββ reflect.py β Pattern analysis + insight generator β βββ forge.py β Diff generator + SOUL.md writer βββ memory/ βββ observations.json β Accumulated session signals βββ soul-baseline.md β Copy of SOUL.md at install time βββ backups/ β All previous SOUL.md versions
Your soul file should feel like a mirror, not a resume. A resume is who you want others to think you are. A mirror shows who you actually are. SoulForge turns your SOUL.md from a resume into a mirror β and updates it every time you change. The goal isn't a perfect soul file. The goal is an honest one.
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.