返回顶部
e

epub2md-cliepub转Markdown

Use the local `epub2md` CLI to inspect EPUB files and convert them into Markdown. Make sure to use this whenever the user mentions `.epub` files, EPUB 转 Markdown、电子书章节导出、合并章节为单个 Markdown、下载或本地化 EPUB 中的远程图片、查看书籍信息/目录/章节结构、或解压 EPUB 内容,即使用户没有明确说出 `epub2md`。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
98
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

epub2md-cli

epub2md CLI

使用此技能通过 epub2md 操作本地 EPUB 文件,而非手动编写解析逻辑。

捆绑脚本

对于任何写入文件的转换操作,请使用捆绑的包装脚本:

/home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py

该包装脚本用于强制执行稳定的工作区布局,并避免 epub2md 1.6.2 的合并路径怪癖。

epub2md 1.6.2 的另一个怪癖:包含全局元字符(如 [ ] ? 或 *)的源文件名仍可能被 epub2md 视为模式,即使 shell 路径引用正确。发生这种情况时,将原始 EPUB 保留在 inputs/ 中,但在调用原始 epub2md 之前,暂存一个安全的临时基本名称(如 book.epub),然后将生成的 book/ 目录复制到预期的工作区输出文件夹中。

epub2md 擅长什么

  • - 使用 --info 检查书籍元数据
  • 使用 --structure 检查目录和嵌套结构
  • 使用 --sections 列出章节/部分
  • 将 EPUB 转换为逐章的 Markdown 文件
  • 将 EPUB 合并为一个 Markdown 文件,最好使用显式输出名称
  • 使用简单的 --merge 合并现有的 Markdown 目录
  • 使用 --localize 下载 EPUB 引用的远程图片
  • 使用 --unzip 解压 EPUB 内容以供检查
  • 使用带引号的全局模式(如 books/*.epub)进行批量转换

前置条件

首先检查命令:

bash
command -v epub2md

如果缺失且环境允许安装,使用 npm 安装:

bash
npm install -g epub2md

如果需要 --localize,请确保 Node.js 至少为 18.0.0。

工作区布局

默认情况下,将转换任务写入:

/home/admin1/.agents/skills/epub2md-cli-workspace/{bookname}

在该目录内:

  • - inputs/ 包含原始 EPUB 文件
  • outputs/ 包含转换结果
  • outputs/split/ 包含逐章的 Markdown 输出
  • outputs/merge/ 包含合并后的 Markdown 输出及相关资源
  • outputs/inspect/ 包含用户明确要求检查输出时保存的检查结果

除非用户明确要求不同的布局,否则不要将转换输出写入用户源 EPUB 旁边。

工作风格

  1. 1. 从用户的真实目标出发,而不是默认转换。
- 如果用户只需要元数据或结构,不要转换书籍。 - 检查仅限选择加入。除非用户明确要求检查 EPUB,否则不要运行。 - 如果用户想要从 EPUB 得到一个最终的 Markdown 文件,使用合并模式。 - 如果用户想要章节文件,使用拆分模式。
  1. 2. 在运行命令前确认源路径。
- 优先使用用户已提供的精确路径。 - 如果用户提到这个文件夹里的那个 epub,使用 shell 工具(如 rg --files -g *.epub)发现它。 - 当路径或全局模式包含空格或通配符时,请引用它们。 - 当 EPUB 基本名称本身包含 [ ] ? 或 * 时,引用是必要但不充分的;epub2md 仍可能在内部将基本名称解释为全局模式。
  1. 3. 如果用户要求转换但未指定输出形式,在写入文件前先问一个简短的问题来澄清。
- 询问用户是想要 多个文件、只要 merge 文件、还是 都转换。 - 当用户明确关心输出形式时,不要在拆分和合并之间猜测。
  1. 4. 对于任何写入文件的转换任务,使用包装脚本。
- 除非用户明确要求原始 CLI 调用,否则不要直接调用 epub2md 进行拆分/合并/两种输出任务。 - 包装脚本将原始 EPUB 复制到 inputs/ 并将结果写入 outputs/。 - 包装脚本始终使用安全的合并调用,不应产生杂散的 home/ 目录。 - 如果转换仍然失败,出现 No files found matching pattern: 或由类似全局的源基本名称引起的包装脚本 FileNotFoundError,回退到安全基本名称暂存:将 EPUB 复制到临时目录作为 book.epub,在那里运行原始 epub2md,然后将生成的 book/ 目录复制回 outputs/merge/ 或 outputs/split/。
  1. 5. 命令完成后,报告具体的输出。
- 说明运行了哪个命令。 - 说明生成的文件写入位置。 - 提及任何限制,例如未使用 --localize 时远程图片未被本地化。
  1. 6. 将 --sections 视为检查工具,而非默认的用户可见输出。
- 在 epub2md 1.6.2 中,--sections 会打印包含原始 HTML 的非常大的对象。 - 在需要深度检查时使用它。 - 为用户总结发现,除非他们明确要求原始转储。

命令选择

仅检查

bash
epub2md --info /path/to/book.epub
epub2md --structure /path/to/book.epub
epub2md --sections /path/to/book.epub
epub2md --unzip /path/to/book.epub

python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode inspect

python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode inspect \
--inspect-actions info structure sections

仅在用户明确想要在决定如何导出之前了解书籍时使用这些。

转换为章节 Markdown 文件

bash
python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode split

python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode split \
--autocorrect

当用户明确想要在 Markdown 输出中清理间距或标点时使用 --autocorrect。

合并为一个 Markdown 文件

bash
python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode merge

python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode merge \
--merge-name custom-name.md

当用户要求特定的最终文件名时使用自定义合并文件名形式。

同时转换拆分和合并输出

bash
python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode both

本地化远程图片

bash
python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode split \
--localize

python3 /home/admin1/.agents/skills/epub2md-cli/scripts/run_epub2md.py \
--input /path/to/book.epub \
--mode merge \
--merge-name custom-name.md \
--localize

仅在用户想要将远程图片下载到输出文件夹时使用。如果需要,提及 Node.js >=18 的要求。

批量转换

bash
epub2md books/*.epub
epub2md --merge books/*.epub

保持全局模式引用,以便 epub2md 直接接收模式。

这是用于显式批量处理请求的原始 CLI 回退。它不使用上述的每本书工作区布局。对于正常的单本书转换任务,优先使用捆绑的包装脚本。

类似全局模式的 EPUB 文件名的回退

仅在源基本名称本身包含 [ ] ? 或 * 且正常包装脚本流程失败时使用此回退。

bash
src=/path/to/Book [Annotated].epub
book_name=Book [Annotated

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 epub2md-cli-1776054511 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 epub2md-cli-1776054511 技能

通过命令行安装

skillhub install epub2md-cli-1776054511

下载

⬇ 下载 epub2md-cli v1.0.0(免费)

文件大小: 6.93 KB | 发布时间: 2026-4-14 10:45

v1.0.0 最新 2026-4-14 10:45
Publish epub2md-cli skill

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部