@goodandready/dsh-clinebot
DeepSeek Harness 的 ClineBot/ClinePass 集成:专属设置页、实时配额仪表板、界面内密钥保存、精选与自定义模型选择,以及 /cline 命令。
安装
dsh plugin --profile web add @goodandready/dsh-clinebot
沙箱测试结果
| 阶段 | 结果 |
|---|---|
| 1 安装 | ✓ |
| 2 列装 | ✓ |
| 3 挂载 | ✓ |
| 4 启动 | — |
四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。
README
📦 @goodandready/dsh-clinebot
<div align="center">
<h3>适用于 DeepSeek Harness 的 ClineBot / ClinePass 原生模型提供商伴侣插件</h3>
<p><b>0.6.30</b> 修复 Node 22 中的流式传输空闲定时器竞争问题(移除 <code>timer.unref()</code> 以防止事件循环提前终止),并将屏幕徽标/指示器(侧边栏配额表和编辑器会话费用)默认设为禁用,供用户在“设置 -> ClineBot -> 集成”中显式启用。保留完整的安全边界、DSH <code>0.2.2-rc.1</code> 支持、模型/免费/日期变体自动补齐、按模型隔离的余额不足冷却和明确的 402/413 错误。聊天使用原生 <code>ctx.llm</code> 适配器;旧的 <code>llm-pi-ai</code>、回环代理和 <code>llm/stream</code> 已删除。</p>
<p align="center">
<a href="https://www.npmjs.com/package/@goodandready/dsh-clinebot"><img src="https://img.shields.io/npm/v/@goodandready/dsh-clinebot.svg?style=for-the-badge&color=6366f1&labelColor=1e1b4b" alt="npm version"></a>
<a href="../LICENSE"><img src="https://img.shields.io/github/license/GooDAnDReaDY/dsh-clinebot.svg?style=for-the-badge&color=10b981&labelColor=064e3b" alt="license"></a>
<a href="https://github.com/topics/dsh-plugin"><img src="https://img.shields.io/badge/DSH-Plugin-8b5cf6.svg?style=for-the-badge&labelColor=2e1065" alt="DSH Plugin"></a>
<a href="https://nodejs.org"><img src="https://img.shields.io/badge/Node-22%2B-f59e0b.svg?style=for-the-badge&labelColor=451a03" alt="Node version"></a>
</p>
<!-- 作者所有项目展示页面链接 -->
<p align="center">
<a href="https://goodandready.app/"><img src="https://img.shields.io/badge/作者所有开源项目-goodandready.app-ff4500.svg?style=for-the-badge&logo=rocket&logoColor=white&labelColor=1a1a2e" alt="所有项目"></a>
</p>
<p align="center">
<a href="README.md"><b>🇬🇧 English</b></a> •
<a href="README.ru.md"><b>🇷🇺 Русский</b></a> •
<a href="README.zh.md"><b>🇨🇳 中文说明</b></a>
</p>
<table align="center">
<tr>
<td align="center">
⭐ <strong>如果您喜欢这个插件,请在 GitHub 上为它点亮 Star</strong> — 这能让我知道插件对您有用,并鼓励我继续开发和维护它。
<br><br>
🐛 <strong>如果您发现 Bug 或希望增加功能</strong>,请使用任意语言在 GitHub 上提交 Issue — 我会评估您的建议,并在后续版本中实现有价值的改进。
</td>
</tr>
</table>
</div>
⚡ 概述与解决的核心痛点
ClinePass (https://cline.bot) 是一项高性价比订阅服务,为开发者提供主流开源代码模型与推理模型 2–5 倍的高并发调用限额,统一通过 OpenAI 兼容接口 (https://api.cline.bot/api/v1) 提供服务。
在将 ClinePass 接入 DeepSeek Harness (DSH) 时存在以下挑战:
1. 缺失 /v1/models 接口:api.cline.bot 的 GET /v1/models 会直接返回 404 Not Found,导致动态模型同步失败或模型列表为空。
2. 专属模型前缀:所有模型 ID 均需前缀 cline-pass/(如 cline-pass/deepseek-v4.1-flash, cline-pass/kimi-k3)。
3. 用量额度监控:5 小时滑动窗口与每周限额需要清晰直观的可视化进度监控。
4. 安全凭据隔离:禁止在明文配置中直接填写密钥。
@goodandready/dsh-clinebot 完美解决以上痛点:
- 🚀 应用内一键更新:直接在 DSH 界面检查并升级插件,或通过受保护的
/dsh-clinebot/update进行本地安全更新。 - ⚡ SWR 配额与健康状态缓存:状态查询毫秒级响应(<2ms),并在后台静默更新,不阻塞前端渲染。
- 🔀 智能配额故障转移 (Smart Failover):在流式请求遇到 HTTP 429 或配额耗尽时自动轮换多账号(具备 30 秒防风暴保护;当前失败请求不自动重试,后续对话请求无缝使用下一个账号)。
- 🖥️ 插件配置页:打开已安装的 ClineBot,进入配置。页面包含凭据名、模型、配额和账号,不单独占用侧边栏。
- 🔄 订阅模型动态同步:从官方
GET /api/v1/users/me/plan自动提取真实包含模型,一键原子级同步至 DSH 提供商配置。DSH 严格仅注册当前套餐模型,内置目录作为特性参考并在未同步时作为备用。 - ⚠️ 额度耗尽实时预警:当 5 小时滑动窗口达到 80%(警告黄色)和 95%(即将耗尽红色)时展示醒目预警横幅与重置倒计时。
- 📈 会话统计与指标看板:实时监控进程启动后经由 ClineBot 提供商发出的真实 DSH 对话请求、Prompt/Completion Token 消耗、流式延迟及错误统计。
- 📊 实时用量仪表盘:调用官方
GET /users/me/plan/usage-limitsAPI,实时渲染 5 小时与每周额度进度条及重置倒计时。 - 🔑 界面直存密钥:在 UI 中直接粘贴 API 密钥,通过
ctx.credentials.set()自动安全保存至~/.dsh/.credentials.yaml。 - 🎯 模型选择器管理:支持勾选开启/关闭特定模型在聊天选择器中的显示。
- 💬 聊天斜杠指令
/cline:在任意聊天框快速查询当前配额、预警横幅、会话指标统计、网络延迟与活跃模型。
🏛️ 架构设计
graph LR
subgraph UI [DSH Web 前端界面]
Page["独立配置页 (设置 -> ClineBot)"]
QuotaBar["5小时与每周额度进度条 + 额度预警横幅"]
KeyInput["API 密钥直填与安全保存"]
ModelPick["模型动态同步与选择器管控"]
StatsCard["会话指标监控看板"]
end
subgraph PluginHost [dsh-clinebot 宿主运行环境]
HttpEndpoints["API 路由: /dsh-clinebot/*"]
ClientCore["lib/cline-client.js"]
ModelCatalog["lib/models.js (内置精选 + 动态订阅解析)"]
SlashCmd["斜杠指令: /cline"]
end
subgraph DSHCore [DSH 核心系统服务]
Credentials["凭据存储服务 (~/.dsh/.credentials.yaml)"]
end
subgraph Upstream [Cline 官方云端]
ClinePass["api.cline.bot/api/v1/chat/completions"]
ClineQuota["api.cline.bot/api/v1/users/me/plan/usage-limits"]
ClinePlan["api.cline.bot/api/v1/users/me/plan"]
end
Page -->|GET /status & /usage| HttpEndpoints
KeyInput -->|POST /save-key| HttpEndpoints
ModelPick -->|POST /models/sync| HttpEndpoints
HttpEndpoints --> Credentials
HttpEndpoints --> ClientCore
ClientCore --> ModelCatalog
ClientCore -->|模型对话| ClinePass
ClientCore -->|额度查询| ClineQuota
ClientCore -->|套餐信息| ClinePlan
✨ 核心模块与功能
lib/models.js:管理动态订阅模型目录与内置精选模板(提供完整的Off/Low/Medium/High/Max思考强度映射、上游 200k 上下文容量标注、自定义模型支持)以及套餐模型动态解析器(parsePlanIncludedModels,getAllModels,getDynamicModels)。- 价格与模型:模型行中的 Ping 调用
POST /models/probe并显示 TTFT;应用可见模型 通过POST /models/visible保存可见模型和套餐过滤。新模型缺少价格时可通过priceAutoSync开关自动从 models.dev 获取公开价格;关闭后仍可使用手动同步。 lib/cline-client.js:fetchUsageLimits:高效并发轮询GET /users/me/plan/usage-limits、GET /users/me/plan与GET /users/me并进行内存缓存。sessionStats/recordSessionRequest:内存级会话度量记录器(请求次数、Token 估算、延迟、时间戳)。saveCredentialKey:将密钥安全写入~/.dsh/.credentials.yaml。smokeChat:毫秒级网络探活与非流式延迟测试,并记录会话指标。lib/index.js:Cordis 插件主生命周期服务,注册后端 REST API 路由(含/dsh-clinebot/models/sync)、额度预警计算与/cline聊天斜杠指令。lib/client.js:插件行配置页(plugins.row.config),含预警横幅、会话指标、一键模型同步,以及后备插件卡片(settings.plugin.item)。没有settings.section侧边栏项。
📦 快速安装
在 DeepSeek Harness Web 配置中安装:
dsh plugin --profile web add @goodandready/dsh-clinebot
重启 DeepSeek Harness 实例并刷新浏览器页面。
💬 聊天斜杠指令 /cline
在任何聊天会话中输入 /cline 即可即时检查配额、预警状态与会话指标:
### 🤖 ClinePass Status (ClinePass) * 响应延迟: ✅ 210 ms * 活跃密钥: CLINEBOT_API_KEY (credentials) * 默认模型: `cline-pass/deepseek-v4.1-flash` ⏱ 5 小时窗口: [████░░░░░░] 42% (重置时间: 18:00) 📅 每周窗口: [██████░░░░] 60% (重置时间: 09月08日) * 绑定账号: `developer@example.com` 📈 当前会话统计: * 请求次数: 14 次 * Token 估算: ~8,450 (Prompt: 6,100 | Completion: 2,350) * 最近延迟: 210 ms
⚙️ 配置项参考 (DSH
…(truncated)
以上内容来自 npm 上的 README,我们只做格式化,不改内容。
版本
npm 上共发布:101,最后更新 2026-11-06