DSH Plugin MarketA community catalog for DeepSeek Harness plugins

dsh-packycode-api

Verified Models & inference ★ 23 1.4.7

Use PackyCode API keys in DeepSeek Harness with multi-protocol models, image generation and editing, separate key rings, and balance display

What it is

Use PackyCode API keys in DeepSeek Harness with multi-protocol models, image generation and editing, separate key rings, and balance display

How to install

Run this in the DSH web profile, then refresh the page.

$ dsh plugin --profile web add dsh-packycode-api@1.4.7

DSH versions accepted

>=0.1.5-rc.1 <0.3.0-0

Author and traction

BaronCyrus · ★ 23 · Updated 2026-11-05

About this plugin

DSH PackyCode API

简体中文 · [English](README.en.md)

用 PackyCode 的 API Key,在 DSH 里选模型、轮换 Key、看余额。

安装后自带 PackyCode 模型分组,不用改 YAML,也不用另配 provider。

[功能](#功能) · [安装](#安装) · [日常使用](#日常使用) · [模型与分组](#模型与分组) · [更新与卸载](#更新与卸载) · [支持作者](#支持作者)

功能

| 能力 | 使用体验 |

| --- | --- |

| 自带模型路由 | 安装后模型选择器出现 PackyCode 分组,不需要配置 provider,也不用改 cordis.patch.yml |

| 自选显示的模型 | 设置页的模型列表默认全选;取消勾选后,切换列表立即隐藏该模型,已有会话仍可继续使用 |

| 多 Key 按顺序使用 | 额度用尽或 Key 被拒绝时自动切到下一个可用 Key;失败的那一步由重试接手 |

| 按分组选 Key | 每个 Key 后面列出它所在的 PackyCode 分组和能用的模型;当前 Key 的分组用不了所选模型(例如没有 cc 分组却选了 Claude)时,这一轮自动改用分组合适的 Key |

| 余额一眼可见 | 设置页列出每个 Key 的剩余、已用、额度、重置周期和用量条;输入框右侧显示当前 Key 的剩余额度 |

| Claude 按分组选通道 | cc 分组只接受官方客户端,这些 Key 的 Claude 会话由本机 Claude Code 自己完成:它用自己的系统提示词和工具做事,DSH 显示每次工具调用,并负责授权、计划审阅和提问;cc-sale、cc-expensive、claude-officially 等分组走插件内 HTTP,由 DSH 自己的 agent 执行 |

| 网页搜索可走 PackyCode | 可选:DSH 的 web_search 改用 PackyCode 搜索,后端在 DeepSeek 与 GPT 之间切换;可只对 PackyCode 模型生效 |

| 图片生成与编辑 | 独立图片 Key,支持 GPT Image 2 / 2.6 Flare / 2.6 Sunburst、型号与质量设置、参考图编辑和 PNG 原图保存;已通过网关生图与编辑实测 |

| 自动审查可换模型 | 开启 DSH 自带的「自动授权审查」后,权限菜单里的「自动审查」可改用 jev-latest 或 DeepSeek Flash 审查每次工具调用,审查规则和处理方式保持官方原样 |

| 凭据不离开本机 | Key 只存在 DSH 凭据文件里。浏览器只能看到备注、状态和余额,拿不到 Key |

安装

先准备好 DeepSeek Harness 和 PackyCode(PackyAPI)的 API Key。尚未安装 DSH,可查看 [DSH 官方说明](https://github.com/deepseek-ai/deepseek-harness#run)。还没有 API Key 的,可以通过[这个邀请链接](https://www.packyapi.ai/register?aff=Im3l)注册 PackyCode 申请。

1. 安装插件

打开桌面应用的插件页,点击添加插件,在包名或地址中填入带版本号的包名:

dsh-packycode-api@1.4.7

在安装源中选择官方源,然后点击安装。1.4.7 是写这份说明时的最新版,当前最新版本号以 [npm 页面](https://www.npmjs.com/package/dsh-packycode-api) 为准。

> 一定要带版本号。 只填 dsh-packycode-api 时,安装前的提示显示的是 npm 上的最新版,但 DSH 自带的 pnpm 默认只安装发布满 24 小时的版本,实际装上的可能是好几个版本之前的旧版,而安装提示里看不出这一点。填写精确版本时,pnpm 会直接安装这个版本,并自动把它加入 profile 的 minimumReleaseAgeExclude。装好后可以在 设置 → PackyCode → 插件版本 核对「当前版本」。

首次安装后无需重启 DSH,可直接打开设置 → PackyCode 添加 Key。这适用于 1.1.7 及以后的版本;更早的版本首次安装后要重启一次,见「常见问题」。更新已加载的旧版时,按「插件版本」卡片的重启提示操作。

2. 添加 Key

打开 设置 → PackyCode,在「添加 Key」里粘贴 API Key。备注可选,用来区分多个 Key。点「添加」。还没有添加过 Key 时,「账户与 Key」里会显示同一个注册邀请链接,点击后在系统浏览器中打开;添加 Key 之后就不再显示。

> 不要把 Key 粘贴到公开 Issue、聊天记录或截图里。插件不会读取环境变量 PACKY_CODE_API_KEY,也不会在失败时偷偷改用别的 provider。

3. 选择模型

回到对话,在模型选择器里选 PackyCode 分组下的模型。十三个模型里,Claude 在 cc 分组的 Key 上由本机 Claude Code CLI 执行,其余都通过插件内 HTTP 调用;Key 的分组必须覆盖所选模型。

检查安装 / 其它 profile / 本地目录

桌面应用的插件页可以看到已安装状态与版本,也可以在那里启用、停用或卸载。

仅用于非 desktop profile: dsh plugin --profile add dsh-packycode-api@1.4.7。不要对 desktop 使用它 —— CLI 会直接拒绝(profile "desktop" is managed exclusively by the Electron application)。

本地开发要加 link: 前缀:dsh plugin --profile add link:/path/to/dsh-packycode-api。不要直接写路径(或 file:) —— 那样的安装会把整个仓库目录(连同 node_modules)复制进 profile,之后它会在 profile 内部挡住 DSH 自带的包,插件看起来像没装,见「常见问题」。已经那样装过的话,先卸载再按上面的方式重装。

没有浏览器的 profile 也能走模型路由,只是看不到设置页和输入框额度。

日常使用

选择显示的模型。 在 设置 → PackyCode → 显示的模型 中勾选要在切换列表里看到的模型,默认全选,也支持「全选」和「全不选」。选择保存在当前 profile,修改后立即生效;取消勾选不会中断已有会话。后续新增的模型默认勾选。

换 Key。 Key 按添加顺序使用。点「切到此 Key」指定优先使用的 Key,下一轮就生效;「重命名」改备注(最多 60 字,不能为空);充值或更换后点「重新启用」。

看分组。 「账户与 Key」里每个 Key 下面列出它所在的 PackyCode 分组(鼠标悬停可看分组说明),以及能用哪些模型:✓ 可用、◐ 部分可用、✕ 不可用。分组由网关自己报出(对一个不存在的模型 id 的拒绝里会写明「已选分组」,单分组的 Key 则是「分组 … 下模型 … 无可用渠道」,不产生费用),再对照 PackyCode 公开的模型分组表。Claude 的分组覆盖要按具体模型确认,不能假定 cc-sale 支持全部三个型号;GPT 需要 codex / codex-sale;DeepSeek 需要 deepseek-officially / deepseek-sale;Hy4 需要 hunyuan-officially。

看余额。 「账户与 Key」里每个 Key 显示它自己的剩余、已用与额度(额度 = 剩余 + 已用),不限额的 Key 显示「不限额度」;多个 Key 不相加成合计。API Key 只能读到自己的额度,读不到 PackyCode 账号的总余额,账号余额请到 PackyCode 控制台查看。读失败的 Key 会在它那一行注明原因;某个 Key 这次读失败但之前读到过,会继续显示上次的余额并注明读取时间(输入框里显示为 ≈US$…),重启 DSH 后才清空。输入框右侧只在选中 PackyCode 模型时显示当前 Key 的剩余额度。「刷新」会跳过约 60 秒的缓存。默认模型接口是 https://cf.api.fan,余额接口是 https://www.packyapi.ai,可在「高级:接口地址」里改。旧默认值 https://www.packyapi.com 在国内网络下 DNS 被污染、直连会 fetch failed,即使设置里保存的是它,插件也会先试 .ai。

用 Claude。 直接选择三个 Claude 模型之一。Key 在 cc 分组时,这个会话由本机的官方 Claude Code CLI 完成,需要先在 设置 → PackyCode → Claude Code CLI 一键安装(或自行 npm install -g @anthropic-ai/claude-code --allow-scripts=@anthropic-ai/claude-code),版本过低或有新版本时在同一处点「更新 Claude Code CLI」;cc-sale、cc-expensive、claude-officially 等分组直接走插件内 HTTP,不需要 CLI。「账户与 Key」里每个能用 Claude 的 Key 会标出「Claude 经官方 CLI」或「Claude 经 HTTP」,通道由分组决定,不能手动切换;分组还没读到时先走 CLI。经 HTTP 时工具由 DSH 执行,计划模式、提问、待办、子代理、附件、思考档位和历史都和其它模型一样;经 CLI 时由 Claude Code 自己执行,差别见下方「Claude Code CLI 通道」。

网页搜索。 DSH 的 web_search 默认调用 DeepSeek 官方接口(用 DEEPSEEK_API_KEY 计费)。在 设置 → PackyCode → 网页搜索 里可以改走 PackyCode:

| 搜索路由 | 效果 |

| --- | --- |

| 不接管(默认) | 不改 DSH 的搜索设置 |

| 自动(按模型路由) | PackyCode 模型用 PackyCode 搜索,其他模型照旧 |

| 始终使用 PackyCode 搜索 | 原本走 DSH 默认搜索的请求都改走 PackyCode |

| 搜索后端 | 模型与协议 | 说明 |

| --- | --- | --- |

| DeepSeek(默认) | deepseek-flash,/v1/messages + web_search_20250305 | 每次约几千 token;需要 DeepSeek 分组 |

| GPT | gpt-6.1-sol,/v1/responses + web_search | 结果通常更新、更准,每次约 2–3 万输入 token;需要网关把这个 Key 的 GPT 请求路由到它的分组 |

PackyCode 没有专用搜索接口:一次搜索就是一次带服务端搜索工具的模型调用,用这里的 Key 计费,额度用尽或 Key 被拒绝时同样切到下一个 Key。

Claude 的搜索。 Claude 对话使用 DSH 的 web_search,遵守上表的路由选择,搜索所用 Key 与其它原生模型遵循同一规则。

网页搜索是怎么接进 DSH 的

  • 插件向 DSH 的 web 服务注册两个搜索后端:packycode-api(始终走 PackyCode)和 packycode-api-auto(按发起会话的模型路由)。只注册不会改变任何行为。
  • 选「自动」或「始终」时,插件在当前 profile 的 cordis.patch.yml 末尾写入一段带 # >>> dsh-packycode-api: web search provider 标记的 - id: web 配置,把 web 行的基础 searchProvider 指向上面的后端;DSH 会热加载这个文件,不用重启。切回「不接管」会删掉这段,其它内容原样保留。
  • 不直接改 web 运行时的搜索槽位:Codex、Kimi 等订阅插件每次 web 重启都会重写那个槽位,两边都写会互相触发重启。它们对自己不负责的模型会回退到 web 行的基础配置,所以写基础配置能和它们共存:Codex 模型仍走 Codex 搜索,其余请求才轮到这里的选择。
  • 这段配置用注释记下写入前的基础搜索(# fallback: …)。「自动」模式下非 PackyCode 模型的请求交给它;如果它又把请求转回本插件,就直接交给 DSH 内置的 deepseek-official,不会循环。
  • 结果只取结构化数据:DeepSeek 用 web_search_tool_result 块,GPT 用 url_citation 标注和 web_search_call 记录;模型写的摘要作为 content 一并返回。
  • 当前 Key 的分组覆盖不到所选后端的模型(网关报 当前令牌未覆盖供应商)时,会试下一个 Key,不停用 Key;都不行就提示切换后端。
  • 设置页会显示当前生效的基础搜索和运行时搜索。如果另一个插件的补丁排在后面

Compare in this category

The five most-starred plugins in the same category.

PluginAuthor StarsVersionUpdated
dsh-our-free-model Ebony-Vinyl 68K 2.1.0 2026-11-10
next-ai-draw-io DayuanJiang 36.9K 0.4.10 2026-11-09
MemOS MemTensor 12.3K 0.0.0 2026-11-09
bisheng dataelement 12.2K 0.0.0 2026-11-10
webnovel-writer lingfengQAQ 7.9K 0.0.0 2026-11-07