# Send SoulForge to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
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.
```
### Upgrade existing

```text
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.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "soul-forge",
    "name": "SoulForge",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/Taha2053/soul-forge",
    "canonicalUrl": "https://clawhub.ai/Taha2053/soul-forge",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/soul-forge",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=soul-forge",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "README.md",
      "observe.py",
      "forge.py",
      "SKILL.md",
      "reflect.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "soul-forge",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-03T20:21:07.016Z",
      "expiresAt": "2026-05-10T20:21:07.016Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=soul-forge",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=soul-forge",
        "contentDisposition": "attachment; filename=\"soul-forge-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "soul-forge"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/soul-forge"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/soul-forge",
    "downloadUrl": "https://openagent3.xyz/downloads/soul-forge",
    "agentUrl": "https://openagent3.xyz/skills/soul-forge/agent",
    "manifestUrl": "https://openagent3.xyz/skills/soul-forge/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/soul-forge/agent.md"
  }
}
```
## Documentation

### SoulForge — Your Soul, Evolving

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.

### External Endpoints

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.

### Security & Privacy

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.

### Model Invocation Note

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.

### 1. 👁️ Observes (passive, automatic)

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.

### 2. 🔍 Reflects (on demand or every 10 sessions)

When triggered, SoulForge surfaces what it's noticed:

"Over the last 3 weeks, I've noticed:
- You consistently push back on vague answers — you want precision
- You start most sessions with a task but end them with a question
- You say 'actually' before your real opinion, not your first one
- You've mentioned your project 14 times but never asked for help with it
- Your tone shifts at night — more reflective, less task-driven

Want me to propose updates to your SOUL.md based on this?"

### 3. ✏️ Proposes (with your approval)

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]

### 4. 🔥 Forges (applies approved changes)

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.

### Trigger Phrases

"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).

### What SoulForge Tracks

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 Aspiration Gap

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.

### Soul History

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.

### Example: A Soul Evolution Over 30 Days

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.

### File Structure

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

### Philosophy

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.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: Taha2053
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-03T20:21:07.016Z
- Expires at: 2026-05-10T20:21:07.016Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/soul-forge)
- [Send to Agent page](https://openagent3.xyz/skills/soul-forge/agent)
- [JSON manifest](https://openagent3.xyz/skills/soul-forge/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/soul-forge/agent.md)
- [Download page](https://openagent3.xyz/downloads/soul-forge)