dsh-pdf2md

DSH PLUGIN工具与能力

仓库 Qiujiyuantiantian/dsh-pdf2md

工具与能力 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件

English | 中文

一句话选型结论

按资料字段整理

dsh-pdf2md 是工具与能力类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,没有现成安装命令,需要按仓库 README 接入。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类工具与能力 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 未标注 复刻 未标注 · 未关闭 issue 未标注
最近更新 未标注 创建于 未标注
README 4.3 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 基础信息齐全,可以先按仓库说明试装。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有现成安装命令,要按仓库 README 手动接入。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在工具与能力场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-pdf2md当前 未做沙盒验证 未标注 未标注 未标注 无
loopx 未做沙盒验证 未标注 6,233 未标注 无
dsh-startup-screen 未做沙盒验证 未标注 633 未标注 有
minara-skills L4 · 沙盒安装通过 中风险 360 未标注 有
dsh-blender-plugin 未做沙盒验证 未标注 211 未标注 无
tokenledger L5 · 运行验证通过 低风险 204 0.2.0-rc.2 等 11 个 有

仓库档案

工具与能力
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方Qiujiyuantiantian仓库 dsh-pdf2md · 默认分支 未标注
分类工具与能力skill
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证未标注商用或二次分发前请确认条款原文
星标 / 复刻 / issue未标注 / 未标注 / 未标注收录时的数值,非实时
创建 / 更新未标注 · 未标注最后推送 未标注
本站收录2026-10-30首次进入本站目录的时间

README 全文

4.3 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-pdf2md

English | 中文

把 PDF、Word、PPT、Excel、HTML 转成 Markdown 或纯文本;遇到扫描件会拒绝,而不是吐一个空文件。

A DSH skill that converts documents to Markdown or plain text — and tells the
truth about what the conversion could not do.

为什么做这个

现成的转换库(pymupdf、markitdown)都很好,但它们不解决"该在什么时候用哪个",
也不会阻止你踩最贵的一个坑:

> 扫描版 PDF 没有文字层,提取出来是空的。工具会老老实实写出一个 0 字节的 .md,
> 下游拿着一份空文件,照样生成一段自信的胡说。

这个 skill 的核心不是转换,是边界:

  • probe 先判断有没有文字层,只读、极快
  • 扫描件 → convert 退出码 2,不写任何文件,并说明下一步选项
  • --format txt 永远输出纯文本,不会把 Markdown 伪装成 .txt

安装

作为 DSH 插件(推荐)

dsh plugin --profile web add dsh-pdf2md

桌面客户端把 profile 名换成你的(默认 desktop):

dsh plugin --profile desktop add dsh-pdf2md

dsh plugin add 会把包装进 profile,并自动登记到 dsh.profile.bundles(实测:全新 profile 一条命令,bundles 就多出这一项)。重启 DSH 后,技能清单里出现 pdf2md。

不用 dsh 命令的话,也可以 pnpm add dsh-pdf2md,再手动把包名加进 profile package.json 的 dsh.profile.bundles。

Python 依赖(必须)

scripts/pdf2md.py 需要 Python 3.10+ 和以下库:

-m pip install -r skills/pdf2md/requirements.txt
# 国内建议加镜像
-m pip install -r skills/pdf2md/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

用 doctor 验证:

skills/pdf2md/scripts/pdf2md.py doctor

找不到合适的解释器时,按顺序试:$PDF2MD_PYTHON → 工作区 .venv/Scripts/python.exe
→ .venv/bin/python → python3 → python,第一个通过 doctor 的就能用。

用法

# 1. 先探(只读)
python scripts/pdf2md.py probe report.pdf

# 2. 再转
python scripts/pdf2md.py convert report.pdf --out ./out
python scripts/pdf2md.py convert report.pdf --engine structure --pages 1-6
python scripts/pdf2md.py convert ./docs --format txt --tables-csv
参数 作用
--out DIR 输出目录,默认与源文件同目录
--engine auto\|structure\|text 引擎,见下表
--format md\|txt txt 永远是纯文本
--pages 1-3,7 PDF 页码范围
--tables-csv 同时把检测到的表格导出成 CSV

两个引擎

structure text
库 pymupdf4llm markitdown
保留标题层级 是 否
格式 仅 PDF PDF/DOCX/PPTX/XLSX/HTML 等
适合 要读、要引用的文档 喂给模型、混合格式

实测(24 页中文公文):

  • structure 取 6 页 → 3 708 字符,10 个标题行
  • text 取全本 → 18 831 字符,0 个标题行

两者不是"谁更好",是回答不同的问题。

质量边界

别承诺做不到的事。 详见 skills/pdf2md/references/quality.md:

  • 合并单元格:内容在,分组丢失
  • 双栏排版:可能串行
  • 公式:变成 Unicode 碎片,不是 LaTeX
  • 扫描件:什么都没有,需要先 OCR——配套的 dsh-scan2md 就是干这个的(可断点续跑、带逐页溯源和质量报告)

沙箱提示

子进程常被限制在工作区内写文件,即使外层 shell 不受限。若在工作区外写入报
PermissionError,不是 skill 坏了 —— 把输出放进工作区即可。

开发

python -m pytest tests -q          # 12 个测试,测试数据在运行时生成
node --check lib/startup.js        # 插件语法
npm pack --dry-run                 # 看会发布哪些文件

CI 在 Python 3.10 / 3.12 / 3.13 和 Node 20 上跑同样三项检查。

发布

npm publish --access public

发布前请替换 package.json 里的 author / repository 字段(当前未填写)。

许可

MIT。转换库各自的许可证独立:pymupdf 为 AGPL-3.0,markitdown 为 MIT —— 若你
分发本 skill,请注意 pymupdf 的 AGPL 传染性。

常见问题

4 问
答案由本站依据条目字段整理,不引用上游原文
dsh-pdf2md 怎么安装?

本站没有抓到该条目的安装命令,请到仓库主页确认安装方式;这类条目多数是生态应用或尚未发布安装包的项目。

dsh-pdf2md 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

dsh-pdf2md 安全吗?

未标注。

dsh-pdf2md 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

工具与能力
按星标排序,可作替代方案

loopx

loopx

LoopX 是面向长周期 Agent 的本地优先控制平面,作为 DSH plugin 为 DeepSeek Harness 提供持久目标、证

未标注验证等级 6,233 星

dsh-startup-screen

dsh-startup-screen

DeepSeek Harness 的启动界面与启动动画插件。

未标注验证等级 633 星

dsh-blender-plugin

dsh-blender-plugin

让 AI 模型通过直连 TCP 通道实时驱动 Blender 的 DSH plugin:15 个工具覆盖视口取帧、任意角度渲染、内循环搜索、

未标注验证等级 211 星

tokenledger

TokenLedger

TokenLedger 为 DeepSeek Harness 提供零配置的 Token 用量记账,自动归属到实际服务请求的中转站,无需凭据即

L5 · 运行验证通过 204 星

deepseek-harness-jev

deepseek-harness-jev

把 TypeSafe Jev 接入 DeepSeek Harness 作为 System One 决策层,为技能与文件选择、任务监督、纠偏和

未标注验证等级 203 星

Qiujiyuantiantian 的其它插件

2 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。