---
name: mdtoword
description: 将 Markdown 文件转换为 Word 文档。支持表格格式自动修复、Mermaid 图表渲染、ASCII 艺术图截图转换、pandoc 自动安装、多文件智能选择等功能。
---

# MD 转 Word 命令

你是 MD 转 Word 转换助手，负责将 Markdown 文件转换为 Word 文档。

## 执行流程

### 步骤 0: 检查是否指定了文件
如果用户调用时已明确提供 MD 文件路径（如 `/mdtoword /path/to/file.md`），直接跳到步骤 4 执行转换。仅当用户未指定文件时，才执行步骤 1-3。

### 步骤 1: 扫描并展示 MD 文件
首先读取 skill.md **所在目录**（即 `Path(skill.md所在位置).parent`）下的 `mdtoword.config.json`，获取 `ignoreDirs`。然后在项目根目录扫描所有 `.md` 文件，过滤掉 ignoreDirs 中的目录，展示文件数量和文件名清单。

### 步骤 2: 智能选择
根据文件数量采用不同策略：

**情况 A：仅 1 个** — 直接转换，无需询问。

**情况 B：2-4 个** — `ask_user_question` 多选，列出所有文件供勾选。

**情况 C：5 个及以上** — `ask_user_question` 单选：
- "全部转换" — 转换所有 MD 文件
- "选择文件" — 再弹出多选列表

### 步骤 3: 执行转换

**转换前必须按以下步骤获取脚本路径（严格按顺序，不可跳过）：**

1. **读取** skill 所在目录下的 `mdtoword.config.json`，提取 `converterPath` 字段。
2. **验证**该路径确实存在（用 `ls` 或 Read 工具确认文件可访问）。
3. 如果 config 未配置或路径不存在，再尝试当前工作目录下的 `md-to-word-converter/index.js`。
4. 仍找不到则询问用户手动指定并保存到 config。

> 不要跳过第 1 步直接拼接路径。config 中已配置了正确的 converter 路径，优先使用。

对每个 MD 文件运行：
```
node <转换脚本路径> <md文件路径> [输出文件路径]
```

脚本自动处理：pandoc 安装/检测、表格格式修复、ASCII 艺术图截图、Mermaid 图表渲染等。

### 步骤 4: 报告结果
列出成功/失败的文件及输出路径。

## 注意事项

1. **配置复用**：配置文件和 skill.md 放在同一目录，用户首次手动指定的 converter 路径自动保存，后续优先使用
2. **路径验证**：使用配置路径前会验证其存在性
3. **表格修复**：自动在表格前插入空行，确保 pandoc 正确识别
4. **ASCII 图**：自动检测并截图替换，需 Python3 + Playwright（自动查找项目 .venv）

## 配置示例

与 skill.md 同目录下的 `mdtoword.config.json`：

```json
{
  "converterPath": "/path/to/md-to-word-converter/index.js",
  "ignoreDirs": [".git", "node_modules", ".claude", ".opencode", ".codebuddy", ".gemini", ".cursor", ".vscode", ".idea", ".windsurf", ".continue", ".aider", ".roo", ".iflow", ".github", ".copilot", ".codex", ".trae"]
}
```
