편집자 노트

fulander0301/dsh-tool-read-tiff

Model-facing read_tiff tool for DeepSeek Harness: decodes TIFF/TIF images (multi-page, LZW/Deflate/PackBits/CCITT/JPEG compression, bilevel, 8/16-bit and float) into viewable PNGs with full header metadata, plus optional vision-model description.

이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.

dsh-tool-read-tiff — TIFF 读取工具插件

English | 中文

dsh-plugin

模型侧 read_tiff 工具:为纯文本模型(DeepSeek V4 等)提供读取 TIFF/TIF 图片的能力—— 这是普通视觉管线与浏览器都无法直接处理的格式。每次调用加载一个 TIFF(本地文件路径或 http(s) URL),把指定页解码成可预览的 PNG,并返回完整的头部元数据(尺寸、页数、压缩方式、 光度解释、各通道位深、字节序)。配置了视觉端点后,它还会把解码出的 PNG 交给 OpenAI 兼容的 视觉模型描述;只有文本与元数据进入对话,TIFF 与 PNG 的字节绝不进入会话记录

解码由 sharp(libvips + libtiff)完成,常见的真实 TIFF 变体开箱即用:经典与 BigTIFF、多页、LZW / Deflate / PackBits / CCITT Group 3 & 4 / JPEG 压缩、二值(1-bit)、8/16 位与浮点采样。

能力

能力说明
两种输入本地绝对路径,或 http(s) URL(拒绝重定向)
解码 + 转换把指定页解码成 PNG,写到源文件旁(URL 输入则写到 outputDir / 系统临时目录);路径经 convertedPath 返回,会话中可直接预览
完整头部元数据width / height / pages / page / channels / depth / space / density,外加 TIFF 特有信息:compression(lzw、deflate、ccitt-group4、jpeg、none…)、photometric(rgb、black-is-zero、cmyk…)、bitsPerSamplesamplesPerPixelbyteOrdervariant(classic / bigtiff)
多页page 是零基页索引;pages 报告总页数,模型可逐页遍历多页传真 / 扫描件
可选视觉配置 baseURL + model 后,解码出的 PNG 发给 OpenAI 兼容端点(Chat Completions),答案以 text 返回;prompt 参数携带你的精确指令
无配置也能组合未配置端点时,工具仍解码 + 转换 + 报告元数据,并返回 note 引导模型对 convertedPath 调用 describe_image
实时配置卡设置 → 插件配置 → 「TIFF reading」卡修改 baseURL / model / API key / 各项上限,即时生效,无需重启

安全模型

  • 视觉请求与 URL 下载均拒绝 HTTP 重定向(redirect: 'error'),bearer 凭证与图片字节 不会转发到部署配置之外的源。
  • 视觉请求体携带 base64 PNG 但不携带密钥;不记录请求头与已解析凭证。
  • 仅接受 http(s) URL 与本地路径,其余 URL 协议一律拒绝。
  • 响应体先按上限截断再解析;错误摘要有界(200 字符)。
  • TIFF 与 PNG 字节绝不返回进对话——只有文本与元数据。

安装

本插件是标准 cordis bundle。从 GitHub 安装到 web profile(prepare 脚本会在安装时自动编译; 若 pnpm 提示,需在 pnpm-workspace.yamlallowBuilds 里放行 sharp):

dsh plugin --profile web add git+https://github.com/fulander0301/dsh-tool-read-tiff.git

或从本地检出安装:

dsh plugin --profile web add file:/path/to/dsh-tool-read-tiff

然后重启 dsh web。bundle 声明 sharpschemastery 为运行时依赖;@deepseek-ai/* 服务 从 dsh 安装解析,与其它 dsh-web-ui 工具插件一致。

配置

工具零配置即可用(仅解码 + 转换 + 元数据)。要启用一步到位的视觉描述,配置视觉端点 (设置 → 插件配置 → 「TIFF reading」,或组合条目):

默认含义
baseURLOpenAI 兼容端点根(如 https://dashscope.aliyuncs.com/compatible-mode/v1),末尾斜杠自动去除
model视觉模型 id
apiKey内联密钥;建议用 apiKeyEnv
apiKeyEnvVISION_API_KEY密钥所在环境变量名(与 describe-image 工具共用约定)
defaultPrompt见源码调用未带 prompt 时的指令
maxBytes67108864TIFF 字节上限(本地文件与下载一致)
maxOutputTokens1024发送给视觉模型的输出 token 上限
timeoutMs60000单次视觉请求超时
outputDir—(URL 输入用临时目录)非本地文件来源时转换 PNG 的落盘目录

带配置的挂载示例(cordis.patch.yml / 组合文件):

- id: read-tiff
  name: 'dsh-tool-read-tiff'
  config:
    baseURL: https://dashscope.aliyuncs.com/compatible-mode/v1
    model: qwen-vl-max
    apiKey: !!js process.env.VISION_API_KEY

使用

把工具指向一个 TIFF,并(可选)给视觉模型精确指令:

  • 「转录这份扫描传真里的全部文字」
  • 「把表格提取为 CSV」
  • 「描述地图要素与投影」
  • 「角落里的标签写的是什么」

多页文件用 page: 1page: 2 逐页调用;pages 告诉你总共有多少页。未配置视觉端点时, 工具仍返回全部解码信息与 convertedPath,可交给已安装的 describe_image 工具查看内容。

已知限制

  • 每次调用一页:多页 TIFF 经 page 逐页读取。
  • 极大或特殊的 TIFF(复杂浮点多波段科学栅格)可能需要预处理;无法解码时工具会以清晰信息 返回 sharp 的错误。
  • 可选视觉步骤仅支持 Chat Completions 协议。

许可证

MIT(插件本身);sharpschemastery 各自遵循其许可证。

REPOSITORY SIGNALS

보안 및 설치 증거

이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.

출처 추적 가능

공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.

라이선스

저장소가 MIT 라이선스를 선언했습니다.

유지보수 활동

최근 180일 내 코드 업데이트가 있습니다.

설치 증거

재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.

설치 라이프사이클 스크립트

prepare이(가) 감지되었습니다. 설치 전에 스크립트를 검토하세요.

주의 사항lifecycle-scripts