核心用法
Personality Switcher 是一套面向 OpenClaw 框架的人格管理技能,允许用户创建、保存并在多个人格之间即时切换。核心操作通过 /personality、/create-personality 等命令完成,无需手动编辑文件。
人格架构:每个人格由 SOUL.md(核心哲学、语气、行为边界)和 IDENTITY.md(名称、类型、Emoji、标语)组成,存储于 ~/.openclaw/workspace/personalities/。USER.md 和 MEMORY.md 保持全局共享,确保用户偏好不因人格切换而丢失。
持久化机制:通过 _personality_state.json 记录激活状态,配合 HEARTBEAT.md 中的 restore_personality.py 脚本,在每次心跳周期自动恢复当前人格,实现会话重启、对话压缩后的无缝衔接。
原子切换与回滚:切换时执行五步原子操作——备份当前状态 → 持久化变更 → 加载新人格 → 更新状态 → 完整性校验。任一步骤失败即触发回滚,确保数据零损坏。
显著优点
1. 会话级持久化:人格状态跨越会话边界,重启后自动恢复,无需重复配置
2. 零风险切换:原子操作+自动回滚机制,杜绝文件损坏或状态不一致
3. 自动备份管理:每次切换生成时间戳备份,默认保留最近10份,支持按数量/天数清理
4. Telegram 原生集成:命令直接映射为 Telegram Bot 指令,移动端友好
5. 灵活扩展:自然语言描述即可生成人格模板,支持后续手动精调
6. 沙箱隔离:人格文件与共享用户数据物理分离,权限边界清晰
潜在局限与风险
- 人格数量无硬限制:过度创建可能导致 personalities 目录膨胀,建议定期归档
- 备份存储占用:高频切换会产生大量备份,虽自动清理仍建议监控磁盘空间
- 描述生成质量依赖 LLM:
/create-personality的模板质量受底层模型能力影响,复杂人格需手动编辑 SOUL.md 精调 - 无跨设备同步:人格数据仅存于本地
~/.openclaw/workspace/,多设备场景需手动同步 - 回滚非无限追溯:仅保障单次切换的原子性,无法回退到任意历史状态(需手动恢复备份)
适合人群
- 需要同一 AI 助手扮演多角色(创意写作、客服培训、游戏主持)的内容创作者
- 追求个性化交互体验、希望为不同场景配置专属人格的高级用户
- 依赖 OpenClaw 框架且对数据持久性和操作安全性有要求的开发者
常规风险提示
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 数据丢失 | 极端情况下状态文件损坏 | 默认备份机制 + 手动备份恢复脚本 |
| 人格污染 | 切换时共享 USER.md 数据可能被新人格"误读" | USER.md 设计为只读,人格脚本禁止修改 |
| 会话劫持 | 恶意技能篡改 personalities 目录 | 依赖 OpenClaw 基础安全模型,建议 S+ 级环境运行 |
| 备份泄露 | 备份文件包含完整人格配置 | 目录权限应与 workspace 一致,避免全局可读 |
安全等级建议:在受控环境(S+ 或 S)下运行,避免在多人共享的 workspace 中存储敏感人格配置。