Personality Switcher
Create and switch between AI assistant personalities. Use /personality to list and activate saved personalities. Use /create-personality to design new personas with auto-filled SOUL and IDENTITY. Pers
Create and switch between AI assistant personalities. Use /personality to list and activate saved personalities. Use /create-personality to design new personas with auto-filled SOUL and IDENTITY. Pers
Real data. Real impact.
Emerging
Developers
Per week
Open source
Skills give you superpowers. Install in 30 seconds.
Create and manage multiple AI assistant personalities. Switch between them seamlessly while preserving all changes and maintaining a shared user context.
When this skill is installed:
~/.openclaw/workspace/personalities/_personality_state.json tracks active personalityWhen uninstalled:
List personalities:
/personality
Switch to a personality:
/personality <name>
Create a new personality:
/create-personality A stoic dwarf who loves ale and mining
Rename a personality:
/rename-personality old-name new-name
Delete a personality:
/delete-personality personality-name
Each personality consists of two files:
These files live in
personalities/<personality-name>/.
USER.md remains shared in the workspace root and is never modified by personality switches. It contains user preferences and context that transcend any particular personality.
The active personality is tracked in
_personality_state.json:
{ "active_personality": "aelindor", "timestamp": "2026-02-08T18:27:33.373846Z", "previous_personality": "default" }
On every heartbeat,
restore_personality.py reads this file and re-applies the active personality to the workspace root. Result: Your personality survives session restarts, conversation compacting, and heartbeat cycles.
When you switch personalities, the mechanism performs five steps:
_personality_state.jsonIf any step fails, the entire operation rolls back to the previous state. No corruption, no lost data.
Backup Location:
~/.openclaw/workspace/personalities/backups/
Backups are stored in a dedicated folder (not scattered at workspace root). When you switch personalities:
Manual Cleanup:
python3 ~/.openclaw/workspace/skills/personality-switcher/scripts/cleanup_backups.py --keep 5 python3 ~/.openclaw/workspace/skills/personality-switcher/scripts/cleanup_backups.py --keep 10 --days 7
Options:
--keep N — Keep N most recent backups (default: 10)--days D — Also delete backups older than D daysOptional: Add to HEARTBEAT.md for periodic cleanup:
python3 ~/.openclaw/workspace/skills/personality-switcher/scripts/cleanup_backups.py --keep 10
"default" is special:
List all personalities or switch to one.
No arguments: Shows list of available personalities with current active marked
With name: Immediately switches to that personality
Example:
/personality aelindor
Output:
Switched to personality 'aelindor'. Previous: default Backup: _personality_current_2026-02-08T18-27-33.371866
Create a new personality from a text description.
Input: Natural language description of the personality
Output: New personality folder with auto-filled SOUL.md and IDENTITY.md (ready to use immediately)
How it works:
The personality files are generated directly from your description, with the agent choosing a thematic, concise name.
Example:
/create-personality A curious wizard obsessed with knowledge, speaks in riddles, brilliant but condescending
Result:
Personality 'sage' (or similar) created and ready. Folder: personalities/sage/ Files: SOUL.md and IDENTITY.md (agent-generated from description) Ready: Use /personality sage to activate
After Creation: The new personality is ready to use immediately. Edit SOUL.md and IDENTITY.md in the personality folder to refine further if desired.
Technical: Agent chooses name to keep personality references concise (1-2 words). Name is validated for uniqueness and format automatically.
Rename a personality folder.
Rules:
Example:
/rename-personality pirate-captain pirate-v2
Delete a personality permanently.
Rules:
Example:
/delete-personality pirate-v2
Add this to your HEARTBEAT.md:
python3 ~/.openclaw/workspace/skills/personality-switcher/scripts/restore_personality.py
This runs on every heartbeat to restore your active personality if the session has restarted.
Registered native Telegram commands:
/personality — List and switch personalities/create-personality — Create new personality/rename-personality — Rename personality/delete-personality — Delete personalityUse them directly in Telegram chat with the bot.
~/.openclaw/workspace/ ├── SOUL.md (active personality's soul) ├── IDENTITY.md (active personality's identity) ├── USER.md (SHARED - never changed by personality) ├── MEMORY.md (SHARED - never changed) ├── _personality_state.json (state file) └── personalities/ ├── default/ │ ├── SOUL.md │ └── IDENTITY.md ├── aelindor/ │ ├── SOUL.md │ └── IDENTITY.md ├── <personality-name>/ │ ├── SOUL.md │ └── IDENTITY.md └── backups/ ├── current_2026-02-08T17-27-41.628113/ │ ├── SOUL.md │ └── IDENTITY.md └── current_2026-02-08T17-27-33.371866/ ├── SOUL.md └── IDENTITY.md
Note: Backups are automatically cleaned up. Workspace root stays clean—all internal machinery lives in
personalities/.
Core philosophy, voice, and operational boundaries.
Sections:
Example Structure:
# SOUL.md - [Personality Name]Core Identity
[Background and essence]
Voice & Mannerisms
[How this personality speaks and acts]
Philosophy
[Core beliefs and worldview]
Signature Behaviors
[Unique traits and catchphrases]
Quick reference card for the personality.
Sections:
Example Structure:
# IDENTITY.md - [Personality Name]
- Name: [Name]
- Type: [Creature or archetype]
- Emoji: [Emoji]
- Vibe: [One-sentence vibe]
- Catchphrase: [Signature phrase]
Quick Traits
Trait 1
Trait 2
Trait 3
Timestamped backups are created before every switch in
personalities/backups/:
current_2026-02-08T17-27-33.371866/
Manual recovery (if needed):
# List available backups ls -la ~/.openclaw/workspace/personalities/backups/Copy backup files back to workspace root if needed
cp ~/.openclaw/workspace/personalities/backups/current_<timestamp>/SOUL.md ~/.openclaw/workspace/SOUL.md cp ~/.openclaw/workspace/personalities/backups/current_<timestamp>/IDENTITY.md ~/.openclaw/workspace/IDENTITY.md
Backups are automatically cleaned up; by default, the 10 most recent are kept. Adjust cleanup frequency or retention in HEARTBEAT.md as needed.
All commands return JSON responses:
Success:
{ "status": "success", "message": "Operation completed.", "personality": "aelindor" }
Error:
{ "status": "error", "message": "Human-readable error message.", "code": "error_code", "detail": "Technical detail if applicable" }
Common Error Codes:
personality_not_found — Target personality doesn't existalready_exists — Name already in useinvalid_name — Name format invalidcannot_delete_default — Attempted to delete "default"cannot_rename_default — Attempted to rename "default"switch_failed — Switch failed; rolled back to previousintegrity_check_failed — File integrity check failedWhen the skill is uninstalled:
personalities/ folder is preserved (not deleted)Nothing is lost. Your personalities are safe.
Location:
skills/personality-switcher/scripts/
list_personalities.py — List available personalitiesswitch_personality.py — Atomic switch with backup/rollback (auto-cleanup included)create_personality.py — Generate personality from descriptionrename_personality.py — Rename personality folderdelete_personality.py — Delete personality (with auto-switch if active)restore_personality.py — Heartbeat restorationcleanup_backups.py — Manual backup cleanup (with --keep and --days options)utils.py — Shared utilities (I/O, backups, validation, state, cleanup)All scripts output JSON for reliable integration.
By default,
switch_personality.py automatically cleans up old backups after a successful switch, keeping the 10 most recent. This happens silently unless cleanup fails, in which case a warning is included in the response.
Version: 2.0 (Redesigned from scratch) Status: Production ready with atomic operations and rollback safeguards
No automatic installation available. Please visit the source repository for installation instructions.
View Installation Instructions1,500+ AI skills, agents & workflows. Install in 30 seconds. Part of the Torly.ai family.
© 2026 Torly.ai. All rights reserved.