markdown_everything:把 Office、PDF 与图片转成 Agent 可读的 Markdown

前言

Agent 读文档时,上下文里放不进原始 PDF 或 .docx 二进制。常见做法是手工复制粘贴,或自己写脚本调用各类解析库,还要处理 Conda、Python 依赖和中文 PDF 乱码。markdown_everything 是 SkillHub 社区 Skill(坐标 @user_2b82496a/wokaka209),把「环境准备 + 多格式转 Markdown」收成一套可被 Agent 调用的流程,标签标明 requires_api_key=false,不依赖外部 API Key。

这是什么

markdown_everything(SkillHub 页面版本 v0.0.1,来源 community,发布者 user_2b82496a,分类 ai-agent)的定位是:将 PDF、Word、Excel、PPT、图片等 20+ 种格式 转为 Markdown,便于 AI Agent 直接读取正文。

实现上,Skill 自带 scripts/:manage_environment.sh 负责 Conda / pip 环境与 MarkItDown 安装,convert_document.py 为转换入口,并对 PDF 提供基于 pdfplumber 的中文编码修复逻辑(pdf_encoding_fixer.py)。Skill 遵循通用 SKILL.md 格式,Agent 加载后按文档中的命令与流程执行即可。

核心功能

下面介绍当前包内可核对的能力(以 SkillHub 下载包为准)。

多格式转换:官方简介与 SKILL 文档列出的类型包括 PDF、Word(.doc / .docx)、Excel(.xlsx / .xls / .csv)、PPT(.ppt / .pptx)、常见图片(含 OCR)、音频转写、HTML、JSON / XML、电子书、ZIP 批量,以及 YouTube URL 字幕等;底层依赖 MarkItDown(markitdown[all])。

环境与依赖:首次使用可通过 manage_environment.sh setup 一键创建默认 Conda 环境(默认名 markitdown,Python 3.12);无 Conda 或失败时可回退 pip。环境变量 MARKITDOWN_ENV_NAME、MARKITDOWN_PYTHON_VER、MARKITDOWN_USE_PIP 可覆盖默认行为。

PDF 中文:对 PDF 会尝试 Unicode 级提取以减轻乱码,失败时回退 MarkItDown 标准路径。

Agent 侧工作流(SKILL 文档建议):确认输入文件路径 → 可选输出目录 → 执行 convert → 读取生成的 .md 再作答。

安装与启用

1. 安装 SkillHub CLI

若尚未安装 CLI,可按 SkillHub 安装说明 执行:

command -v skillhub && skillhub --version

未安装时(完整安装,含默认 Skill):

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash

仅 CLI:

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only

2. 安装 markdown_everything

安装时必须用 --dir 指向当前 Agent 的 skills 目录,否则默认落在 ./skills/ 可能不会被识别。官方页面给出的安装提示为:参照上述安装文档,安装 @user_2b82496a/wokaka209。

skillhub install wokaka209 --namespace user_2b82496a --dir ~/.cursor/skills/

常见路径(摘自 SkillHub 安装文档):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下 .agents/skills/

安装后 Skill 通常位于类似 ~/.cursor/skills/@user_2b82496a/wokaka209/ 的目录;修改 skills 后按你所用客户端要求重启或重新加载 Agent。

3. 初始化转换环境

进入 Skill 内的 scripts 目录后执行(Linux / macOS):

cd ~/.cursor/skills/@user_2b82496a/wokaka209/scripts
./manage_environment.sh setup

check 可查看 Conda 与 MarkItDown 状态:

./manage_environment.sh check

典型用法

经过上面的步骤,日常转换推荐 convert 子命令。

单文件转当前目录:

./manage_environment.sh convert -i document.pdf

指定输出目录:

./manage_environment.sh convert -i document.pdf -o /path/to/output

强制仅用 pip(无 Conda 或需快速验证时):

./manage_environment.sh convert --pip-only -i document.pdf -o /path/to/output

查看支持格式列表(经 run 调用转换脚本):

./manage_environment.sh run python convert_document.py --list-formats

Agent 在对话中应优先向用户确认输入文件绝对路径与输出目录(可默认当前目录),再在上述 scripts 路径下执行命令,并读取输出目录中与源文件同名的 .md 文件作为上下文。

适用场景与注意

适合:需要在 Cursor、Claude Code、Codex 等环境里让 Agent 消化用户提供的 Office / PDF / 扫描件;希望依赖由 Skill 脚本自动拉取,而不是每次手写 pip install markitdown。

注意:

  • 首次 setup 会创建 Conda 环境并安装 markitdown[all],耗时与网络、磁盘有关;沙箱或限网环境需允许脚本访问外网。
  • SkillHub 包 v0.0.1 的 scripts/ 含 manage_environment.sh;SKILL 文档中还描述了 Windows 的 manage_environment.ps1,若你本机仅有 .sh,在 Linux / macOS / WSL / Git Bash 下使用 Bash 脚本即可。
  • OCR、音频、YouTube 等能力依赖 MarkItDown 及其可选组件,复杂版式或损坏文件可能仍需人工校对。
  • 页面统计(以抓取资料为准):评分 100000,下载 992,安装 6;与第三方转载数据可能不一致,以 SkillHub 技能页 为准。

结尾

markdown_everything 把多格式文档统一成 Markdown,并附带环境与 PDF 中文处理脚本,适合作为 Agent 的「读文档前处理」步骤。无需 API Key,通过 SkillHub 安装后即可在 Agent 会话中按 SKILL 流程调用。

  • SkillHub 页面:https://www.skillhub.cn/skills/user_2b82496a/wokaka209
  • API 坐标:https://api.skillhub.cn/user_2b82496a/wokaka209
  • 安装说明:https://skillhub.cn/install/skillhub.md
羽毛球分组比赛记分
小程序二维码

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

Xiaoye