Moraxyc
dsh-cpa
No description
- Stars
- 0
- Language
- TypeScript
- Created
- Aug 16, 2026
- Updated
- Aug 16, 2026
Introduction
dsh-cpa
English | 简体中文
CLI Proxy API(CPA)的 dsh bundle 插件。注册 cpa provider,请求走
CPA 的 /v1/chat/completions,同步 /v1/models 模型列表。
快速开始
npx @deepseek-ai/dsh plugin --profile web add dsh-cpa
headless profile 同理:
npx @deepseek-ai/dsh plugin --profile headless add dsh-cpa
从源码安装
开发或本地构建时使用:
npx @deepseek-ai/dsh plugin --profile web add .
headless profile 同理:
npx @deepseek-ai/dsh plugin --profile headless add .
使用已有 CPA
在设置面板切换到“外部 CPA”,填写 URL、API key、management key 后点击
“应用”。
自动启动 CPA
默认生成 $DSH_HOME/cpa/config.yaml,启动 cli-proxy-api,并把生成的 key
注入 provider 适配器。启动前会先在 PATH 中解析可执行文件;二进制不在 PATH
时,在 CPA 设置页的内部 CPA 路径中填写绝对路径。
模型每 5 分钟从 /v1/models 同步一次。
设置面板
CPA 页面使用 dsh web-app 组件,支持内部、外部两种启动方式,保存到
$DSH_HOME/cpa/settings.json。只有内部 CPA 运行时显示停止操作。管理面板
在弹窗中打开。外部模式可配置 URL、API key、management key;内部
模式可配置 CPA 可执行文件路径。高级设置可配置端口、模型刷新间隔、
quota 缓存与并发,以及配置、设置、执行记录路径。其中端口、配置路径和
“使用统计”只对内部 CPA 生效;模型刷新间隔、quota 缓存/并发、设置路径和执行记录
路径对两种模式都生效。
使用状态
插件会解析成功与失败响应中的 x-cpa-trace-id,把脱敏后的执行记录写入
$DSH_HOME/cpa/executions.json,并给当前会话提供 cpaUsage 投影。
/dsh-cpa/execution-status?sessionId=... 返回脱敏后的账号、额度快照和
最近一次执行记录,供 composer 下方的紧凑状态行读取。浏览器无法调用 CPA 的
/v0/management/api-call,该接口仅由服务端 quota 查询使用。状态行只展示 CPA
集成特有的信息:当前使用服务商/套餐、失败/不可用状态和一个主额度窗口,不重复
dsh 已展示的 token、耗时和性能统计。服务商同时从认证文件和 API key 配置读取;
有执行记录时按 CPA trace 的账号定位当前服务商;trace 没有账号或账号不在已读取
配置中时,只按模型推断服务商。点击可展开账号、来源、Base URL/前缀、额度、
模型/用途和 CPA trace/request 标识。同一会话仍按 CPA 账号聚合请求、失败与
token,作为 cpaUsage 投影保留;无管理 API 时状态行自动隐藏。
内部 CPA 的 usage-statistics-enabled 默认开启,可在 CPA 设置面板中关闭。
CPA 摘要
只读 /dsh-cpa/summary 接口由服务端使用 management key 调用 CPA 管理 API,
浏览器只收到脱敏汇总数据,不包含 management key 或账号凭据。摘要包含版本/更新
状态、白名单过滤的运行时配置、/v0/management/api-key-usage 与认证文件计数聚合
的请求统计、脱敏账号,以及认证文件提供的模型到账号可用性。CPA 管理 API 不暴露
token 汇总,因此 token 项保持为 0。服务端做短时缓存;单个来源失败只记录错误,
不影响其他数据。
设置页提供紧凑的“CPA 摘要”区域:版本/更新、运行配置、用量总计、用量明细、账号。
composer 状态详情在有 requestId 时提供“日志”链接,打开 CPA 原始 management
日志界面。管理面板仍是完整管理入口。