Workspace files, upgrade behavior, and how to customize agents
Each A.L.I.C.E. agent has its own isolated workspace directory where it stores its identity, instructions, and memory. Understanding how these files work lets you customize agent behavior without breaking upgrades.
Every agent gets its own workspace at:
~/.openclaw/workspace-{agentId}/
For example:
~/.openclaw/workspace-olivia/ — Olivia's workspace~/.openclaw/workspace-dylan/ — Dylan's workspace~/.openclaw/workspace-daphne/ — Daphne's workspaceEach workspace contains the files described below.
SOUL.md ⚠️ Overwritten on upgradeThe agent's core identity, values, tone, and domain focus. This defines who the agent is — their domain expertise, operating principles, and personality. Written by the A.L.I.C.E. team and reset on each upgrade to ensure consistency.
Don't edit this file. Changes will be overwritten on upgrade. Use PLAYBOOK.md to extend behavior instead.
AGENTS.md ⚠️ Overwritten on upgradeOperational instructions for the agent — how it should structure its work, how it receives tasks, what to do after tasks complete, and its behavioral red lines. Think of it as the agent's job description and operating procedure.
Don't edit this file. Use PLAYBOOK.md for custom instructions.
IDENTITY.md ⚠️ Overwritten on upgradeMinimal identity metadata: name, emoji, role label, and vibe. Used for display purposes and quick-reference context. Reset on upgrade.
TOOLS.md ⚠️ Overwritten on upgradeNotes about the tools and CLIs available to the agent in its domain. Documents what tools it should prioritize and any environment-specific notes. Reset on upgrade (though you can add environment notes to PLAYBOOK.md instead).
PLAYBOOK.md ✅ Preserved on upgradeYour primary customization file. Add your own instructions, preferences, conventions, and domain context here. The agent reads this alongside AGENTS.md at session startup — it's your layer on top of the defaults.
This is where you customize agents. Examples:
LEARNINGS.md ✅ Preserved on upgradeA running log of lessons the agent appends after non-trivial tasks. Entries cover what worked, what didn't, and reusable patterns worth remembering. Preserved across upgrades so the agent accumulates domain knowledge over time.
You can read this to understand how the agent has been performing. You can also manually add entries if you want the agent to "learn" something specific.
MEMORY.md / memory/ ✅ Preserved on upgradePersistent memory storage. Agents write task notes, prior work summaries, and context that should survive between sessions. Stored as dated Markdown files in the memory/ directory.
Preserved across upgrades — this is the agent's long-term memory.
FEEDBACK.md ✅ Preserved on upgradeUser feedback the agent should incorporate into future behavior. If Olivia (or you) flags that an agent responded poorly or should behave differently, notes can go here. The agent reads this at startup.
USER.md ✅ Preserved on upgradeContext about the user that the agent should know — name, timezone, preferences, relevant background. Preserved so agents stay familiar with you across upgrades and sessions.
| File | On Upgrade | Purpose |
|------|-----------|---------|
| SOUL.md | ⚠️ Overwritten | Core identity and values |
| AGENTS.md | ⚠️ Overwritten | Operating instructions |
| IDENTITY.md | ⚠️ Overwritten | Display metadata |
| TOOLS.md | ⚠️ Overwritten | Tool reference notes |
| PLAYBOOK.md | ✅ Preserved | Your custom instructions |
| LEARNINGS.md | ✅ Preserved | Accumulated task lessons |
| MEMORY.md / memory/ | ✅ Preserved | Persistent task memory |
| FEEDBACK.md | ✅ Preserved | User feedback notes |
| USER.md | ✅ Preserved | User context |
Rule: never edit SOUL.md, AGENTS.md, IDENTITY.md, or TOOLS.md. Put customizations in PLAYBOOK.md.
Open ~/.openclaw/workspace-dylan/PLAYBOOK.md and add:
## Conventions
- Always use TypeScript. Never plain JavaScript.
- Use Prisma for database access unless explicitly told otherwise.
- Our API follows REST conventions — avoid GraphQL unless asked.
- Backend services live in `/services/`, shared utilities in `/lib/`.
## Environment
- Local dev: http://localhost:3000
- Staging: https://staging.example.com
- Production: https://app.example.com
Dylan will read this at the start of every session and apply these conventions automatically.
Open ~/.openclaw/workspace-daphne/PLAYBOOK.md and add:
## Documentation Standards
- Follow the Diátaxis framework: separate tutorials, how-tos, references, and explanations
- API docs must include request/response examples for every endpoint
- Always include a "Why this exists" section in architecture docs
- Use American English spelling
Add to both PLAYBOOK.md files:
## Brand Voice
- Direct, confident, slightly irreverent
- No corporate jargon ("synergy", "leverage", "circle back")
- Use active voice. Short sentences.
- Address the reader as "you", not "users" or "customers"
# List all agent workspaces
ls ~/.openclaw/
# View Olivia's playbook
cat ~/.openclaw/workspace-olivia/PLAYBOOK.md
# View Dylan's recent learnings
tail -50 ~/.openclaw/workspace-dylan/LEARNINGS.md
See also: Agent Roster | Olivia — Orchestrator