把 PDF 和图片逐页转成 Markdown 并导出图片
28.4/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add omdsh-dev/dsh-paddle-ocr该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · vision
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 76 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 25 处,展示前 25 条)
- 发起网络请求src/api.ts:131
response = await fetch(SYNC_API_URL, { - 发起网络请求src/api.ts:177
response = await fetch(ASYNC_JOBS_URL, { - 发起网络请求src/api.ts:200
response = await fetch(ASYNC_JOBS_URL, { - 发起网络请求src/api.ts:246
const response = await fetch(`${ASYNC_JOBS_URL}/${jobId}`, { - 发起网络请求src/api.ts:289
const response = await fetch(jsonlUrl, { signal }) - 读取本地文件src/assets-route.ts:78
const stream = createReadStream(absolute) - 读取本地文件src/assets-route.ts:88
return existsSync(path) ? statSync(path) : undefined - 读取本地文件src/assets-route.ts:88
return existsSync(path) ? statSync(path) : undefined - 发起网络请求src/download.ts:45
const response = await fetch(url, { signal: AbortSignal.timeout(IMAGE_TIMEOUT_MS) }) - 写入本地文件src/staging.ts:27
mkdirSync(dir, { recursive: true }) - 写入本地文件src/staging.ts:52
writeFileSync(target, bytes) - 写入本地文件src/staging.ts:60
writeFileSync(target, bytes) - 删除本地文件递归src/staging.ts:66
rmSync(stageDirOf(jobId), { recursive: true, force: true }) - 写入本地文件src/staging.ts:71
mkdirSync(STAGE_ROOT, { recursive: true }) - 读取本地文件src/staging.ts:72
const entries = readdirSync(STAGE_ROOT, { withFileTypes: true }) - 读取本地文件src/staging.ts:74
.map(entry => ({ name: entry.name, mtime: statSync(join(STAGE_ROOT, entry.name)).mtimeMs })) - 删除本地文件递归src/staging.ts:77
rmSync(join(STAGE_ROOT, stale.name), { recursive: true, force: true }) - 写入本地文件src/workspace-output.ts:49
mkdirSync(root, { recursive: true }) - 写入本地文件src/workspace-output.ts:60
mkdirSync(dirname(safe), { recursive: true }) - 写入本地文件src/workspace-output.ts:62
writeFileSync(safe, bytes) - 写入本地文件src/workspace-output.ts:98
mkdirSync(root, { recursive: true }) - 读取本地文件src/workspace-output.ts:109
if (from === undefined || to === undefined || !existsSync(from)) continue - 写入本地文件src/workspace-output.ts:110
mkdirSync(dirname(to), { recursive: true }) - 写入本地文件src/workspace-output.ts:111
copyFileSync(from, to) - 发起网络请求src/workspace-output.ts:119
const response = await fetch(url, { signal: AbortSignal.timeout(60_000) })
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-credentials@deepseek-ai/dsh-fs@deepseek-ai/dsh-host-apiproxy@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings@deepseek-ai/dsh-tools@deepseek-ai/dsh-llm@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 解析文档版面
- 异步任务进度跟踪
DSH 插件,用 PaddleOCR-VL 解析文档版面:把 PDF 和图片转成 Markdown,支持异步任务、进度跟踪和工作区导出。
README
由 DeepSeek 最新模型翻译生成dsh-paddle-ocr
作者 / 维护者: @Zacklinkk
DSH 插件:百度 PaddleOCR-VL 文档布局解析。把 PDF / 图片逐页解析为 Markdown (文字 + 图片落盘),提供三个宿主工具、一个浏览器配置卡和一个任务面板。
- 宿主工具(agent 可用):
- paddle_ocr_layout(file, {mode, fileType, orientation, unwarping, chart, visualize, outputDir})
—— 逐页解析落盘(doc_N.md + 图片),默认异步模式;超限 PDF 自动拆分;队列满(10010)自动指数退避重试(最多 5 次),最终仍满则给出友好排队提示。
- paddle_ocr_test() —— 用内置小测试图验证 token 与接口连通性(✅/❌ + 详情)。
- paddle_split_pdf(file, {maxPages, outputDir}) —— 手动拆分超限 PDF。
- 浏览器 UI:
- 设置 → 插件 → PaddleOCR 卡片:API token(只进 DSH 凭据保险箱,永不回传、
输入框常空、只显示“已配置”徽章)、[测试连接] 按钮、处理默认值(异步/同步、
方向矫正、展平、图表识别、可视化标注图)。
展开完整文档(README 剩余 1 节)
dsh-paddle-ocr
作者 / 维护者: @Zacklinkk
DSH 插件:百度 PaddleOCR-VL 文档布局解析。把 PDF / 图片逐页解析为 Markdown (文字 + 图片落盘),提供三个宿主工具、一个浏览器配置卡和一个任务面板。
- 宿主工具(agent 可用):
- paddle_ocr_layout(file, {mode, fileType, orientation, unwarping, chart, visualize, outputDir})
—— 逐页解析落盘(doc_N.md + 图片),默认异步模式;超限 PDF 自动拆分;队列满(10010)自动指数退避重试(最多 5 次),最终仍满则给出友好排队提示。
- paddle_ocr_test() —— 用内置小测试图验证 token 与接口连通性(✅/❌ + 详情)。
- paddle_split_pdf(file, {maxPages, outputDir}) —— 手动拆分超限 PDF。
- 浏览器 UI:
- 设置 → 插件 → PaddleOCR 卡片:API token(只进 DSH 凭据保险箱,永不回传、
输入框常空、只显示“已配置”徽章)、[测试连接] 按钮、处理默认值(异步/同步、
方向矫正、展平、图表识别、可视化标注图)。
- 右下角任务面板:拖入/选择文件 → 进度条(排队中 / 解析第 x 页 / 下载图片)→ 结果页签(Markdown 预览 + 图片缩略图)→ [落到工作区]。队列满(10010)渲染为 “当前排队中(稍后重试)”按钮,而不是错误字符串。
安装
在 DSH 部署机上,把本包加入 web profile(同时打进 host 组合与浏览器 bundle)
dsh plugin --profile web add link:/path/to/dsh-paddle-ocr
插件自带 dsh.bundle.patch(组合插入行)与 dsh.client 声明;dsh plugin 会自动把包名加入 dsh.profile.bundles。重启 dsh web 后生效。
获取 API token
1. 打开星河社区 ;
2. 登录后进入 个人中心 → 访问令牌(token);
3. 复制 token,粘贴到 设置 → 插件 → PaddleOCR 卡片,点保存,再点 [测试连接]。
也可以设置环境变量 PADDLE_OCR_TOKEN(环境变量优先、只读,卡片会显示只读徽章)。
⚠️ 安全提醒:请轮换你此前在 skill 仓库里使用过的 token。
本插件的前身(paddle-ocr skill)曾在 config.json 中以明文写入过一个 aistudio token 并进入 git 历史,视为已泄漏。请勿继续使用该 token:到星河社区个人中心重新生成一个,并在该 skill 仓库中彻底删除旧文件、改写历史。
本插件从不把任何密钥写进代码、配置或日志——token 只存在于 DSH 凭据保险箱。
API 限制与行为
| 模式 | 接口 | 限制 | 超限处理 |
| async(默认) | POST https://paddleocr.aistudio-app.com/api/v2/ocr/jobs(模型 PaddleOCR-VL-1.5) | 1000 页 / 本地 50MB | 自动拆分后逐份提交,页号全局连续 |
| sync | POST https://b3kd6029kevcafkb.aistudio-app.com/layout-parsing | 100 页 | 同上(100 页/份);300s 超时 |
- 队列饱和是常态:提交返回 errorCode 10010(任务提交队列已满)时,工具与面板都会指数退避重试(2s/4s/8s/16s…最多 5 次);重试耗尽后给出明确“排队中”提示,
面板提供 [稍后重试] 按钮。
- 任务面板上传上限 30MB(回环 RPC 承载);更大的文件请让 agent 用 paddle_ocr_layout 工具直接处理。
开发
npm install --legacy-peer-deps # 安装依赖(DSH 包走 workspace 软链)
DSH_WORKSPACE_ROOT=/path/to/dsh-source node scripts/setup-dsh-workspace.mjs
npm run typecheck # 宿主 + 客户端类型检查
npm test # vitest 单测(重试/拆分/测试图)
npm run build # lib/index.js(宿主)+ lib/client.js(浏览器)
客户端 bundle 由 tsdown.config.ts 构建(CJS + __ModuleLoader__ 工厂), CSS Modules 内联注入;宿主半是普通 tsc 输出。
License
BSD-3-Clause预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
omdsh-dev/dsh-paddle-ocr
把 PDF 和图片逐页转成 Markdown 并导出图片
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,364已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,709已汉化DSH
71.8
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,319已汉化DSH
71.5
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,533已汉化DSH
71.1
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 93,105已汉化DSH
71.1
这是你的仓库?认领条目