EasyClaw Config Migration
Locate three config sources before making changes:
- 1.
~/Library/Application Support/@cfmind/easyclaw/easyclaw.json — EasyClaw desktop UI settings - INLINECODE1 — EasyClaw/OpenClaw bridge config with reusable runtime settings
- INLINECODE2 — active OpenClaw config
Most directly reusable settings live in ~/.openclaw/easyclaw.json. The desktop easyclaw.json is mostly UI state and usually does not map cleanly into OpenClaw.
Workflow
1. Inspect and compare
Run:
CODEBLOCK0
This prints:
- - which files exist
- redacted summaries
- fields that can be migrated automatically
- fields that are desktop-only / no direct OpenClaw equivalent
If you only need a report, stop here and summarize the findings.
2. Review the migration map
Read references/mapping.md when deciding what should be copied automatically versus left for manual review.
Default stance:
- - copy only fields with clear semantic equivalents
- do not invent mappings for desktop-only UX settings
- preserve user changes already present in
~/.openclaw/openclaw.json unless the migration is explicitly requested
3. Apply a selective merge
Run:
CODEBLOCK1
Behavior:
- - create a timestamped backup of INLINECODE7
- merge only supported fields from INLINECODE8
- print changed paths
Dry run first when practical:
CODEBLOCK2
4. Validate and summarize
After applying, read ~/.openclaw/openclaw.json or use normal OpenClaw validation/status commands if needed. Summarize:
- - what was migrated
- what was intentionally skipped
- where the backup was written
Notes
- - Treat tokens, secrets, and auth blobs as sensitive. Redact them in chat unless the user explicitly wants raw values.
- If only the desktop EasyClaw file exists, explain that most of it is app/window preference state and not the main OpenClaw runtime config.
- If both
~/.openclaw/easyclaw.json and ~/.openclaw/openclaw.json exist, prefer a selective merge over wholesale overwrite. - Never overwrite
~/.openclaw/openclaw.json without creating a backup first.
EasyClaw 配置迁移
在进行更改前,定位三个配置源:
- 1. ~/Library/Application Support/@cfmind/easyclaw/easyclaw.json — EasyClaw 桌面端 UI 设置
- ~/.openclaw/easyclaw.json — EasyClaw/OpenClaw 桥接配置,包含可复用的运行时设置
- ~/.openclaw/openclaw.json — 当前活跃的 OpenClaw 配置
大多数可直接复用的设置位于 ~/.openclaw/easyclaw.json。桌面端的 easyclaw.json 主要是 UI 状态,通常无法直接映射到 OpenClaw。
工作流程
1. 检查并对比
运行:
bash
python3 scripts/reporteasyclawconfig.py
该命令将输出:
- - 哪些文件存在
- 脱敏后的摘要信息
- 可自动迁移的字段
- 仅限桌面端使用/无对应 OpenClaw 等效项的字段
如果仅需报告,在此处停止并总结发现即可。
2. 审查迁移映射
在决定哪些内容应自动复制、哪些需留待人工审查时,请阅读 references/mapping.md。
默认原则:
- - 仅复制具有明确语义等效项的字段
- 不为仅限桌面端的 UX 设置创建映射
- 除非明确要求迁移,否则保留 ~/.openclaw/openclaw.json 中已有的用户更改
3. 执行选择性合并
运行:
bash
python3 scripts/mergeeasyclawconfig.py --apply
行为:
- - 创建 ~/.openclaw/openclaw.json 的时间戳备份
- 仅从 ~/.openclaw/easyclaw.json 合并受支持的字段
- 输出已更改的路径
在可行时先进行试运行:
bash
python3 scripts/mergeeasyclawconfig.py
4. 验证并总结
应用后,读取 ~/.openclaw/openclaw.json 或根据需要运行常规的 OpenClaw 验证/状态命令。总结:
注意事项
- - 将令牌、密钥和认证数据块视为敏感信息。在聊天中对其进行脱敏处理,除非用户明确要求原始值。
- 如果仅存在桌面端 EasyClaw 文件,请说明其中大部分是应用/窗口偏好状态,而非主要的 OpenClaw 运行时配置。
- 如果 ~/.openclaw/easyclaw.json 和 ~/.openclaw/openclaw.json 同时存在,优先选择选择性合并而非整体覆盖。
- 在创建备份之前,切勿覆盖 ~/.openclaw/openclaw.json。