xmind-to-emmx.skill:把 XMind Zen 导图转成 eMindMap 的 EMMX

前言

团队里常见一种断层:导图在 XMind 里维护,下游工具或同事用的是 eMindMap(.emmx)。手工重画层级成本高,也容易漏节点。若你只需要把文本和父子结构迁过去,而不是完整还原样式,一个只做格式转换、依赖极少的脚本往往更合适。下面介绍 SkillHub 上的社区 Skill xmind-to-emmx.skill:用 Python 标准库把 .xmind 转成 .emmx,可在本机命令行直接跑,也可作为 Agent Skill 供助手按说明调用。

这是什么

xmind-to-emmx.skill 是 XMind → EMMX 的格式转换工具:读取 XMind 思维导图(.xmind),输出 eMindMap 格式(.emmx)。

  • 坐标:@user_dda00956/xmind-to-emmx
  • 版本:1.0.0(2026-05-05)
  • 来源:community(SkillHub 发布者 user_dda00956)
  • 分类:dev-programming
  • 标签:requires_api_key=false(无需 API Key)

包体很小(约 3 KB 级 ZIP),内含 SKILL.md 与 scripts/convert.py,逻辑本地执行,无网络请求。

核心功能

已核实能力如下:

  1. 解析 XMind Zen 格式:.xmind 实为 ZIP,脚本解压后读取 content.json;兼容顶层为数组或字典两种 JSON 结构,取第一个 Sheet 的 rootTopic。
  2. 生成 EMMX 结构:递归遍历节点,根节点映射为 MainIdea,子节点为 SubTopic;为每个节点分配 UUID,在 XML 中记录 SubLevel 以保留层级。
  3. 打包输出:在临时目录写入 page/page.xml,再 ZIP 为 .emmx;临时目录在 finally 中清理。
  4. 运行时依赖:仅 Python 3.6+ 标准库(zipfile、json、xml.etree.ElementTree、os、sys、shutil、tempfile、uuid),无需 pip 安装第三方包。

第三方深度检查报告(2026-05-06)在真实 Zen 格式样例上做过完整链路测试(含 615 节点导图),转换结果与节点计数一致;该报告与官方说明中的「已知限制」一致,可作为能力边界的补充参考。

安装与启用

从 SkillHub 获取包

  • API 页:https://api.skillhub.cn/user_dda00956/xmind-to-emmx
  • 展示页:https://www.skillhub.cn/skills/user_dda00956/xmind-to-emmx

页面统计(以抓取资料为准):评分 100000,下载 1263。安装到具体 Agent 产品时,请按你使用的 SkillHub / IDE 集成方式拉取 @user_dda00956/xmind-to-emmx;资料中未单独列出 Cursor、Codex CLI、Claude Code 的差异命令,此处不展开未核实步骤。

本地解压与环境

.skill 本质为重命名的 ZIP。可先改扩展名为 .zip 再解压,或用任意 ZIP 工具打开,得到:

xmind-to-emmx.skill/
├── SKILL.md
└── scripts/
    └── convert.py

确认本机 Python 版本:

python --version

需要 Python 3.6 及以上。无需安装额外库。

典型用法

在解压后的 Skill 目录(或已将 scripts/convert.py 放到工作路径的环境)中执行:

python scripts/convert.py <输入文件.xmind> [输出文件.emmx]

指定输出文件名:

python scripts/convert.py mymap.xmind mymap.emmx

省略第二个参数时,默认在与输入文件同目录生成同名 .emmx:

python scripts/convert.py mymap.xmind

参数不足、文件不存在或其他异常时,脚本会打印提示并以非零退出码结束,便于在脚本或 CI 里判断失败。

适用场景与注意

适合:

  • 从 XMind 2019 及以上(Zen 格式,内含 content.json)迁出导图骨架到 eMindMap。
  • 需要在无外网、无额外 Python 依赖的机器上做一次性或批量转换(可自行写 shell 循环调用同一命令)。
  • 希望 Agent 读取 SKILL.md 后,按固定命令帮用户完成转换说明或代跑脚本。

格式与内容限制(官方与设计说明一致):

项 说明
输入 仅 XMind Zen(.xmind + content.json),不支持旧版 content.xml
输出 EMMX 基础结构,不含布局坐标,布局依赖 eMindMap 自动排版
多 Sheet 只处理第一个 Sheet
富内容 仅文本与层级;不保留样式、颜色、图标、图片、备注、链接、优先级标签等

使用前请确认源文件为 Zen 导出,且你对「只保留结构」的预期与下游 eMindMap 使用方式一致。若需要多画布或完整视觉信息,应在 XMind 侧先合并 Sheet 或接受手工补全。

结尾

xmind-to-emmx.skill 把 XMind Zen 到 eMindMap 的迁移收成一条可复现的命令:零第三方依赖、跨平台标准库实现,边界在官方文档里写得很清楚。若你的痛点是结构迁移而非像素级还原,可以优先试用。

  • 官方地址:https://api.skillhub.cn/user_dda00956/xmind-to-emmx
  • SkillHub 页面:https://www.skillhub.cn/skills/user_dda00956/xmind-to-emmx
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜