为 Claude Code / OpenClaw 添加双向文档转换能力
Bruce Doc Converter 是一个 Agent Skill,为 Claude Code / OpenClaw 添加双向文档转换能力。安装后,AI 可以:
- Office/PDF → Markdown:将 Word、Excel、PowerPoint、PDF 等文档转换为 AI 友好的 Markdown 格式进行分析
- Markdown → Word:将 Markdown 导出为排版精美的 Word 文档,自动应用专业样式和格式
- Mermaid 图片导出:在 Markdown → Word 时,自动将 Mermaid 代码块渲染为图片并嵌入 Word
Claude Code / OpenClaw 默认只能直接读取 Markdown 和纯文本文件。当你上传 Word、Excel、PDF 等文档时,AI 无法直接理解其内容。
这个 Skill 解决了这个问题:
- 让 AI 能够"阅读" Office 文档和 PDF
- 将文档转换为 AI 易于分析的 Markdown 格式
- 支持双向转换(Markdown 转 Word)
| 转换方向 | 支持格式 | 特性 |
|---|---|---|
| Office/PDF → Markdown | .docx, .xlsx, .pptx, .pdf | 标题、列表、表格、格式 |
| Markdown → Word | .md | 专业文档、样式保留、Mermaid 代码块转图片 |
- 标题识别:自动识别 Word 标题层级(Heading 1-6)及中文标题样式
- 格式保留:保留粗体、斜体等文本格式
- 表格转换:智能转换表格为 Markdown 格式
- 列表支持:支持有序列表、无序列表及多级嵌套
- Mermaid 图表:支持基于
mmdc (mermaid-cli)渲染 Mermaid 代码块,并以 Word 兼容性更好的 PNG 图片格式嵌入
与官方 docx 等通用 skill 相比,Bruce Doc Converter 预置了完整的转换脚本:
- 一次调用,直接出结果:AI 无需现场推理如何处理文档、现场编写转换代码,直接调用预置脚本即可完成转换
- 节省 Tokens:省去了多轮"写代码 → 执行 → 报错 → 修复"的来回,单次调用返回结构化结果
- 行为确定,结果稳定:转换逻辑固定在脚本中,不依赖 AI 每次临时生成的代码,输出格式一致可预期
- 核心 Python 依赖仅 10-15MB(启用 Mermaid 高保真渲染会额外安装 Node 浏览器依赖)
- 自动安装:首次运行时自动安装依赖到用户目录
最简方式:直接告诉你的 AI 来安装。
把以下内容发给 Claude Code 或 OpenClaw:
帮我安装这个 skill:https://github.com/brucevanfdm/bruce-doc-converter
AI 会自动完成 clone 和配置,首次使用时依赖也会自动安装,无需任何手动操作。
- Python 3.6+(必需)
- Node.js 14+(可选,仅 Markdown → Word 需要)
如果你更喜欢自己动手:
# macOS/Linux
git clone https://github.com/brucevanfdm/bruce-doc-converter.git ~/.claude/skills/bruce-doc-converter
# Windows
git clone https://github.com/brucevanfdm/bruce-doc-converter.git %USERPROFILE%\.claude\skills\bruce-doc-converter依赖会在首次使用时自动安装,无需手动操作。如果自动安装失败,可以手动执行:
pip install --user python-docx openpyxl python-pptx pdfplumber根据你的操作系统和环境,选择合适的执行方式:
| 环境 | 推荐命令 | 说明 |
|---|---|---|
| Linux/macOS | ./convert.sh <file> |
直接执行 Shell 脚本 |
| Windows PowerShell | .\convert.ps1 <file> |
推荐方式,支持 UTF-8 编码 |
| Windows Git Bash | powershell.exe -Command "Set-Location '<skill-dir>'; .\convert.ps1 '<file>'" |
在 Git Bash 中调用 PowerShell |
| Windows CMD | convert.bat <file> |
传统方式,可能有编码问题 |
在 Claude Code / OpenClaw 中使用:
Claude Code / OpenClaw 在 Windows 环境中通常运行在 Git Bash 中,因此推荐使用 PowerShell 方式:
powershell.exe -Command "Set-Location 'C:\Users\Bruce\.claude\skills\bruce-doc-converter'; .\convert.ps1 'c:\path\to\file.docx'"安装 Skill 后,在 Claude Code / OpenClaw 中直接对话即可:
帮我分析这个 report.docx 的内容
读取这个 data.xlsx 并总结数据
把这个 document.pdf 转成 markdown
把 notes.md 导出为 Word 文档
在 Markdown 中写 Mermaid 代码块,导出 Word 时会自动渲染为图片:
```mermaid
flowchart TD
A[开始] --> B{是否通过}
B -->|是| C[继续]
B -->|否| D[结束]
```导出后的 .docx 中会插入对应图表图片;如果 Mermaid 渲染失败,会自动回退为原始代码块,避免转换中断。
转换 docs 文件夹里的所有文件
当你在 Claude Code / OpenClaw 中请求处理文档时:
- 检测需求:Claude 识别到需要处理 Office/PDF/Markdown 文件
- 调用转换脚本:运行
./convert.sh或python scripts/convert_document.py - 自动处理:
- 检测 Python 环境
- 验证文件格式
- 自动安装缺失的依赖(到用户目录,无需虚拟环境)
- 执行转换
- 返回结果:返回 JSON 格式的转换结果,包含 Markdown 内容和输出路径
- 后续处理:Claude 分析转换后的内容,回答你的问题
转换后的文件保存在原文件同级目录:
your-project/
├── report.docx # 原文件
├── document.md # 原文件
├── Markdown/ # Office/PDF → Markdown 输出
│ └── report.md
└── Word/ # Markdown → Word 输出
└── document.docx
| 格式 | 输入 | 输出 | 质量 |
|---|---|---|---|
| Word (.docx) | ✅ | ✅ | 优秀 |
| Excel (.xlsx) | ✅ | ❌ | 优秀 |
| PowerPoint (.pptx) | ✅ | ❌ | 良好 |
| PDF (.pdf) | ✅ | ❌ | 取决于类型 |
| Markdown (.md) | ✅ | ✅ | 优秀 |
注意:不支持旧版格式(.doc, .xls, .ppt),请先转换为新格式。
Skill 会自动检测并安装依赖,如果自动安装失败,可手动安装:
pip install --user python-docx openpyxl python-pptx pdfplumber当前限制为 100MB,建议分割文件或压缩内容。
需要安装 Node.js 和依赖:
cd scripts/md_to_docx
npm install请优先检查以下两点:
- Node.js 与 npm 可用(
node -v、npm -v) - Mermaid 依赖已安装(
cd scripts/md_to_docx && npm install)
如果仍失败,转换不会中断,文档会回退保留 Mermaid 原始代码块。
- 使用新版 Office 格式(.docx, .xlsx, .pptx)
- PDF 优先使用文本型,扫描型建议先 OCR
- 文件大小建议 < 50MB
bruce-doc-converter-skill/
├── SKILL.md # Claude Code Skill 定义
├── convert.sh # 便捷运行脚本 (macOS/Linux)
├── convert.bat # 便捷运行脚本 (Windows CMD)
├── convert.ps1 # 便捷运行脚本 (Windows PowerShell,推荐)
├── requirements.txt # Python 依赖(参考)
├── scripts/
│ ├── convert_document.py # 转换脚本核心(支持自动安装依赖)
│ └── md_to_docx/ # Markdown → Word 模块
├── references/
│ └── supported-formats.md # 格式支持详情
└── tests/ # 测试文件
依赖安装位置(自动):
~/.local/lib/python*/site-packages/ # Linux/macOS
%APPDATA%\Python\Python*\site-packages\ # Windows
| 依赖 | 大小 | 用途 |
|---|---|---|
| python-docx | ~2MB | Word 处理 |
| openpyxl | ~3MB | Excel 处理 |
| python-pptx | ~2MB | PowerPoint 处理 |
| pdfplumber | ~5MB | PDF 处理 |
MIT License