dsh-pdf-toolbox

DSH PLUGIN文档与办公

仓库 glentao-dev/dsh-pdf-toolbox

文档与办公 L4 · 沙盒安装通过 安全审查:低风险 可信度:银 可安装插件
安装这个插件

PDF 结构操作 DSH 插件:合并/拆分/压缩/加水印/提取-删除-旋转-插入页面/元数据/加密检测/文本提取(9 个工具 14 项操作,纯本地 pdf-lib + pdfjs-dist)

一句话选型结论

按资料字段整理

dsh-pdf-toolbox 是文档与办公类的 DSH 可安装插件,验证等级 L4 · 沙盒安装通过,安全审查为低风险,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类文档与办公 收录类型可安装插件 验证等级L4 · 沙盒安装通过 安全审查低风险
验证等级 L4 L4 · 沙盒安装通过
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-10-25 创建于 2026-10-25
README 5.7 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:glentao-dev/dsh-pdf-toolbox
  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 查看包信息

能做什么

文档与办公
字段来自项目仓库与公开索引,中文说明由本站标注

适用场景

文件读写办公自动化视觉识别

上游标签

cordis-plugindeepseek-harnessdsh-pluginpdfpdf-lib

验证等级与安全审查

L4 · 沙盒安装通过
自动化流程结论,不是人工审核
验证等级L4 · 沙盒安装通过安装命令在隔离沙盒内真实执行成功,无依赖错误
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度银综合仓库活跃度与验证结果

选择建议

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

值得选的地方

  • 验证等级 L4:在沙盒里真实装过,依赖能装上,不是纸面声明。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在文档与办公场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

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

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-pdf-toolbox当前 L4 · 沙盒安装通过 低风险 0 未标注 有
reactive-resume L3 · 安装规范通过 低风险 4.4 万 未标注 有
webnovel-writer L4 · 沙盒安装通过 低风险 7,742 未标注 有
answer-me-with-html L4 · 沙盒安装通过 低风险 4,782 未标注 有
univer-workspace L4 · 沙盒安装通过 低风险 2,258 未标注 有
last30days-skill-cn L4 · 沙盒安装通过 低风险 1,880 未标注 有

仓库档案

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

README 全文

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

dsh-pdf-toolbox

PDF 结构操作 DSH 插件,9 个工具覆盖 14 项操作:合并、拆分、压缩、加水印、提取/删除/旋转/插入页面、元数据、加密检测、文本提取、文档信息。
纯本地运行,无 API key,无上传,无 token 成本。
底层依赖 pdf-lib(结构操作)+ pdfjs-dist(文本层读取)。


安装

dsh plugin --profile <你的档案> add dsh-pdf-toolbox

本地开发 / 未发布时:

dsh plugin --profile <你的档案> add "file:D:/软件/自制软件/PDF 工具新版本"

卸载:dsh plugin --profile <你的档案> remove dsh-pdf-toolbox

> 注意:dsh plugin 会写入 $DSH_HOME/profiles/<档案>/package.json。
> 如果该操作报 EPERM: operation not permitted,说明当前进程的沙箱只允许写工作区,
> 需要在允许写 ~/.dsh 的模式下重跑。


工具一览(9 个工具覆盖 14 项操作)

工具 覆盖的操作
pdf_info 页数、每页尺寸、元数据概览
pdf_merge 多文件合并(可限定每文件页码范围)
pdf_split 按区间拆分 / 每 N 页拆分 / 每页一个文件
pdf_compress 对象流重排压缩
pdf_watermark 文本水印平铺(角度/透明度/颜色/页码可选)
pdf_pages extract 提取页、delete 删除页、rotate 旋转页、insert 插入页
pdf_metadata 读/写标题、作者、主题、关键词、创建/修改时间
pdf_encrypt 检测是否加密、输出无保护副本
pdf_text 提取文本层为文本或 .txt

页码语法

所有 pages 参数统一使用 1 开始的页码,逗号分隔、支持区间:

1-3,5,8-10     # 第 1~3、5、8~10 页
all            # 全部页(等价于留空)

使用示例

把 D:\reports\a.pdf 和 D:\reports\b.pdf 合并成 D:\out\merged.pdf
→ pdf_merge { files: ["D:\\reports\\a.pdf", "D:\\reports\\b.pdf"], output: "D:\\out\\merged.pdf" }

只合并 a.pdf 的第 1-5 页和 b.pdf 全文
→ pdf_merge { files: ["D:\\reports\\a.pdf", "D:\\reports\\b.pdf"], pages: "1-5" }
(pages 会应用到每个输入文件)

把 report.pdf 每 10 页拆一个文件
→ pdf_split { input: "D:\\r\\report.pdf", every: 10, outputDir: "D:\\out" }

给合同.pdf 打上 "CONFIDENTIAL" 水印,只要第 1 页
→ pdf_watermark { input: "D:\\c\\合同.pdf", text: "CONFIDENTIAL", pages: "1" }

把 scan.pdf 的第 2-4 页抽出来
→ pdf_pages { input: "D:\\s\\scan.pdf", action: "extract", pages: "2-4", output: "D:\\out\\ex.pdf" }

删除 book.pdf 的第 1 页
→ pdf_pages { input: "D:\\b\\book.pdf", action: "delete", pages: "1" }
(先用 pdf_info 看总页数,再算要删的页码;不支持负数页码)

读取 meta.pdf 的标题和作者
→ pdf_metadata { input: "D:\\m\\meta.pdf", action: "read" }

提取 report.pdf 全文到 txt
→ pdf_text { input: "D:\\r\\report.pdf", output: "D:\\out\\report.txt" }

输出路径规则

  • 不给 output 时,默认写在输入文件旁边,文件名加动作后缀(如 a-merged.pdf)。
  • 给了 output 时必须是绝对路径;相对路径会直接报错,避免写丢。
  • 已存在的输出文件默认拒绝覆盖,需要显式传插件配置 overwrite: true 或在调用时先删旧文件。
  • 插件配置 outputRoots 可把显式输出限制在指定目录内(默认输入旁边不受限)。

配置

在档案的 cordis.patch.yml 里按 id 覆盖:

- id: dsh-pdf-toolbox
config:
timeoutMs: 600000        # 单个操作超时(大文件合并/超大文档时调大)
maxInputMb: 1024         # 输入大小上限
overwrite: true          # 允许覆盖已存在输出
watermarkOpacity: 0.25   # 水印不透明度
watermarkRotate: 45      # 水印角度
配置项 默认 说明
timeoutMs 180000 单次操作协作超时
maxInputMb 1024 输入 PDF 大小上限
maxPages 2000 页数上限
outputRoots [] 限制显式输出目录,空 = 不限制
overwrite false 是否覆盖已存在输出
watermarkFont Helvetica-Bold 水印字体
watermarkOpacity 0.3 水印不透明度
watermarkRotate 45 水印旋转角度

已知边界(重要)

以下限制来自底层库能力,插件不会伪造结果:

  1. 中文水印:pdf-lib 的标准 14 字体(Helvetica 等)只能编码 ASCII。
    传中文文本时会自动退化为 WATERMARK,并在结果里说明原因。
    要做中文水印,需要外部字体嵌入,暂未实现。
  2. 设置打开密码:pdf-lib 1.x 不能写 /Encrypt 字典。
    pdf_encrypt 只做检测和无保护副本输出;真正加密请用本机
    qpdf --encrypt in.pdf out.pdf <密码> 或 Ghostscript。
  3. 解密:同样不支持用密码解密内容,只能重排输出。
  4. PDF → Word/Excel/PPT/图片:本插件不做格式转换(那是 dsh-file-convert 的职责)。
    本插件专注 PDF 结构操作 + 文本层提取。
  5. OCR:本插件不做 OCR(那是 dsh-pdf-extractor 的职责)。
    扫描件先用 OCR 工具得到带文字层的 PDF,再用本插件处理。

开发

npm install
npm run build      # tsc → lib/
npm run smoke      # 生成临时 PDF,跑通 9 个工具的全部动作

插件入口约定(与 @deepseek-ai/dsh-tool-fs 等官方插件一致):

export const name = 'dsh-pdf-toolbox'
export const inject = ['tools']
export function apply(ctx, config) { ctx.tools.register(...) }
export { Config }

License

MIT

常见问题

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

在 DSH 里执行 `dsh plugin --profile web add github:glentao-dev/dsh-pdf-toolbox` 即可。

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

L4 · 沙盒安装通过。安装命令在隔离沙盒内真实执行成功,无依赖错误

dsh-pdf-toolbox 安全吗?

低风险。

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

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

dsh-pdf-toolbox 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

文档与办公
按星标排序,可作替代方案

webnovel-writer

webnovel-writer

基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200 万字量级 连载创作。

L4 · 沙盒安装通过 7,742 星

answer-me-with-html

answer-me-with-html

Answer me with HTML — an agent skill that answers hard questions with

L4 · 沙盒安装通过 4,782 星

last30days-skill-cn

last30days-skill-cn

last30days-cn 是一个 AI Agent 技能(Skill),能够自动搜索中国互联网 8 大主流平台最近 30 天的内容,综合分

L4 · 沙盒安装通过 1,880 星

dsh-bili-scroll

dsh-bili-scroll

DSH 插件:每天替你刷一轮 B站,读字幕挑出值得的、写一份日报,值得的 @ 你

L5 · 运行验证通过 1,025 星

glentao-dev 的其它插件

1 个

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