DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

bannerchi /

bannerchi/dsh-yiyide-pdf

Verified

一译得(yiyide.cc)PDF 翻译的 DeepSeek Harness 插件:12 个 yiyide_* 工具覆盖授权、上传、页级预检、预览、报价、确认、任务轮询与成品下载。

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@456b8b49

dsh-yiyide-pdf

一译得(yiyide.cc)PDF 翻译的 DeepSeek Harness 插件: 把「上传 → 页级预检 → 三页预览 → 报价 → 确认冻结译点 → 翻译 → 质量确认 → 下载」整条流水线做成 DSH 原生工具, 翻译在 DSH 里发起,成品直接落到本机。

  • 复用一译得已有的连接器接口(/v1/connector、/v1/uploads、/v1/orders、/v1/jobs 白名单),没有新增后端。
  • 授权码就是网页端的连接器授权码:在 https://app.yiyide.cc/account 用手机号登录后生成,wb_ 开头,30 天有效。
  • 原件不出本机以外的地方:只有 PDF 字节目片上传给一译得,与网页端行为一致。

安装

# 从 GitHub 装(推荐)
dsh plugin --profile web add github:bannerchi/dsh-yiyide-pdf

# 或在 DSH 里装本地目录(会 pnpm link 进当前 profile,并写入 dsh.profile.bundles)
dsh plugin --profile web add /path/to/dsh-yiyide-pdf

--profile 换成你自己的 profile 名:dsh web 下一般是 web,DSH 桌面版的 profile 是 desktop。 也可以让 DSH 的插件管理器安装同一个目录。装好后重启/刷新 DSH 会话,工具 yiyide_* 即可用。

要求:DSH >=0.2.0 <0.4.0,Node 20+。插件本身零运行时依赖 (@deepseek-ai/dsh-tools、@deepseek-ai/schemastery 由 DSH 宿主提供,所以声明为可选 peer)。

授权(三选一,推荐第一种)

  1. 插件配置(最安全) — 设置 → 插件 → 一译得 PDF 翻译 → connectorToken 字段粘贴授权码。 该字段是 role('secret'),界面掩码显示,不会进入会话记录。
  2. 原生授权流 — 若宿主提供 authorization 服务,可在 DSH 的授权入口里选择「一译得 PDF 翻译授权码」, 在系统弹窗里粘贴(不走对话)。
  3. 工具传参 — 对话里 yiyide_connect { token: "wb_…" }。会先真实请求一次账号接口验证,通过才写入 DSH 凭据中心(ref YIYIDE_CONNECTOR_TOKEN);缺点是授权码会留在会话记录里,介意就用前两种。

授权读取顺序:凭据中心 YIYIDE_CONNECTOR_TOKEN → 插件配置 connectorToken。 授权失效(AUTH_REQUIRED)时回到网页重新生成即可,旧码会被自动作废。

工具

工具 作用 是否改状态
yiyide_connect 绑定/校验/清除授权码 只动本机凭据
yiyide_account 账号:手机号掩码、可用/冻结译点、上传限制、支持语言 只读
yiyide_translate 上传本地 PDF + 等页级预检,拿到页数与报价译点 创建上传
yiyide_upload_status 回查某个上传的预检/报价/预览授权 只读
yiyide_preview 授权三页预览并把水印 PNG 存到本机 可能冻结少量译点
yiyide_quote 生成(或恢复)正式报价订单,不开始翻译 创建订单
yiyide_order 回查订单状态与译点 只读
yiyide_confirm 确认报价:冻结 quoted_points 译点并开始完整翻译 冻结译点
yiyide_job 任务进度(可 wait_seconds 有界轮询)、文档风险 只读
yiyide_quality 成品风险确认:accept 结算并开放下载 / reject 释放译点 结算或释放
yiyide_download 下载纯译文 / 双语对照 PDF 到本机 只写本机文件
yiyide_jobs 最近任务记录(≤100) 只读

典型对话

把 ~/Documents/paper.pdf 翻译成中文

模型会按 yiyide_translate → (展示页数与报价)→ yiyide_preview → yiyide_quote → 你确认费用 → yiyide_confirm → yiyide_job → yiyide_download 的顺序推进。任何冻结/结算译点的步骤都会弹 DSH 原生确认框, 上面写着账号、文件、页数、冻结译点与账户余额;选「取消」不会扣点。

安全与金额保护

  • 授权码只存在本机(凭据中心/插件配置),不作为工具参数回传给模型,日志里也不会出现原文。
  • 每次请求 60s 超时;拒绝 HTTP 重定向;JSON ≤ 1MB、预览 PNG ≤ 8MB、成品 ≤ 512MB。
  • 成品下载链接只接受一译得 origin 或 COS(*.myqcloud.com)的 HTTPS 无端口签名地址, 签名 URL 请求不带账号凭证;链接过期只刷新一次。
  • 写入型请求失败(OUTCOME_UNKNOWN / 网络中断/5xx)绝不自动重试:插件会按已知 ID 回查状态, 然后把决定权交回给你,避免重复上传/重复下单/重复确认。
  • 确认前会重读订单,若报价或状态变了直接报 STATE_CHANGED,不会按旧价扣点。
  • 成品落盘 0600 且不覆盖已有文件(自动加 (2) 后缀)。

配置项

字段 默认 说明
apiOrigin https://yiyide.cc 只接受生产 origin 或本机 loopback
connectorToken 空 连接器授权码(secret)
defaultTargetLanguage zh 默认目标语言 code
outputDirectory 空 成品目录;空则用会话工作目录,其次 ~/Downloads
previewDirectory 空 预览 PNG 目录;空则用系统临时目录
requestTimeoutSeconds 60 单请求超时
preflightIntervalSeconds / preflightMaxRounds 4 / 30 页级预检轮询节奏与上限
pollIntervalSeconds 6 任务轮询间隔
allowAnyDownloadHost false 允许任意 HTTPS 下载地址(不建议)

结构

lib/api.js     连接器 HTTP 客户端(错误码、超时、下载 URL 校验)
lib/files.js   本地 PDF 校验、sha1/分片 sha256、成品/预览落盘、状态快照
lib/flow.js    业务流程(上传、预检、预览、报价、确认、轮询、下载)
lib/tools.js   defineTool 工具定义(12 个 yiyide_* 工具)
lib/index.js   Config + apply:凭据读写、原生确认框、授权流、系统提示
cordis.patch.yml  插件条目(insert yiyide-pdf)

已知边界

  • 只走「标准」表达风格、PDF 导出、preset_mode: off(与一译得连接器当前能力一致)。 需要学术/正式风格、术语库或其它导出格式时,请到网页端继续。
  • 单文件页数与大小受账号上限约束(yiyide_account 里的 limits)。
  • 页级预检/翻译是异步任务:长文档需要多次 yiyide_job 轮询,或在 yiyide_job 里给 wait_seconds。

开发与测试

test/fake-api.mjs 是一个按连接器契约实现的最小假服务端(分片校验、预检、预览授权、 报价/确认、任务状态、质量确认、签名下载),全部测试都在不花钱、不联网的前提下跑:

npm test    # = node --test test/smoke.test.mjs test/flow.test.mjs,13 个用例
  • test/smoke.test.mjs:用替身顶掉 @deepseek-ai/*(真实环境由 DSH 宿主兜底解析), 验证 apply() 能注册 12 个工具、授权流、系统提示,以及未绑定/绑定/清除授权码与账号查询。
  • test/flow.test.mjs:整条流水线(全流程 / 质量确认 / 分片失败不重试 / 本地文件校验)。

插件安装是「生成式」快照(DSH 会把插件目录复制进 profile 的一个 generation), 所以改完 lib/ 之后要重新安装一次才会生效:

dsh plugin --profile web add /path/to/dsh-yiyide-pdf

同一个路径已经装过时,add 会报 already-installed(file: 安装不看版本号),需要先移除再装:

dsh plugin --profile web remove dsh-yiyide-pdf
dsh plugin --profile web add /path/to/dsh-yiyide-pdf

生产环境探针(不需要授权码)可用于确认接口在线:

curl -s https://yiyide.cc/v1/translation/capabilities | head -c 200     # 200 + 语言列表
curl -s -o /dev/null -w '%{http_code}\n' https://yiyide.cc/v1/connector/account   # 401 LOGIN_REQUIRED
—/ 5

No ratings yet

Verified DSH bundle

Commit 456b8b498a56

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout