dsh-clinebot
DeepSeek Harness companion for ClineBot / ClinePass: dedicated settings page, live quota dashboard, in-UI key saving, curated & custom models, /cline command.
- Stars
- 0
- Language
- JavaScript
- Created
- Sep 4, 2026
- Updated
- Sep 4, 2026
Introduction
📦 @goodandready/dsh-clinebot
Native ClineBot / ClinePass Provider Companion for DeepSeek Harness
⚡ Overview & The Problem
ClinePass (https://cline.bot) is a flat-rate subscription service ($9.99/mo) providing developers with 2–5x higher rate limits across premier open-weights coding and reasoning models through a single OpenAI-compatible endpoint (https://api.cline.bot/api/v1).
Integrating ClinePass into DeepSeek Harness (DSH) natively poses key challenges:
- No
/v1/modelsDiscovery:GET /v1/modelsonapi.cline.botreturns404 Not Found. Dynamic discovery fails silently or leaves the provider with 0 models. - Model Identifier Formats: Models require the specific prefix
cline-pass/(e.g.cline-pass/deepseek-v4-flash,cline-pass/kimi-k3). - Quota Tracking: Rolling 5-hour and weekly limits need clear in-browser visualization.
- Credential Security: Storing API keys directly in plain settings is insecure.
@goodandready/dsh-clinebot provides a complete solution:
- 🖥️ Dedicated Settings Page: Full-width page in DSH Settings (
Settings → ClineBot). - 📊 Live Quota Dashboard: Visual progress bars for 5-hour rolling limits and weekly windows from the official
GET /users/me/plan/usage-limitsAPI. - 🔑 In-UI Key Storage: Paste your API key directly in the UI; it is saved securely via
ctx.credentials.set()into~/.dsh/.credentials.yaml. - 🎯 Model Picker Management: Granular checkboxes to choose which models appear in the chat picker.
- ➕ Add Custom Models: Add newly released ClinePass models directly from the UI without waiting for plugin updates.
- 💬 Slash-Command
/cline: Check quota, limits, latency, and active model directly from the DSH chat console.
🏛️ Architecture
graph LR
subgraph UI [DSH Web Interface]
Page["Dedicated Page (Settings -> ClineBot)"]
QuotaBar["5-Hour & Weekly Progress Bars"]
KeyInput["Direct Key Paste & Save"]
ModelPick["Model Picker Controls & Custom Models"]
end
subgraph PluginHost [dsh-clinebot Host Runtime]
HttpEndpoints["API: /api/plugins/dsh-clinebot/*"]
ClientCore["lib/cline-client.js"]
ModelCatalog["lib/models.js (Curated + Custom)"]
SlashCmd["Command: /cline"]
end
subgraph DSHCore [DeepSeek Harness Services]
Credentials["Credentials Service (~/.dsh/.credentials.yaml)"]
PiAi["Settings: llm-pi-ai.providers.clinebot"]
end
subgraph Upstream [Cline Cloud]
ClinePass["api.cline.bot/api/v1/chat/completions"]
ClineQuota["api.cline.bot/api/v1/users/me/plan/usage-limits"]
end
Page -->|GET /status & /usage| HttpEndpoints
KeyInput -->|POST /save-key| HttpEndpoints
ModelPick -->|POST /register & /models| HttpEndpoints
HttpEndpoints --> Credentials
HttpEndpoints --> ClientCore
ClientCore --> ModelCatalog
HttpEndpoints -->|Atomic Mutate| PiAi
ClientCore -->|Chat| ClinePass
ClientCore -->|Usage Limits| ClineQuota
✨ Features & Module Breakdown
lib/models.js: Manages the curated catalog (11 built-in models) and user-added custom models (getAllModels,validateCustomModel).lib/cline-client.js:fetchUsageLimits: queriesGET /users/me/plan/usage-limitsandGET /users/mewith in-memory caching.saveCredentialKey: writes credentials directly into~/.dsh/.credentials.yaml.smokeChat: tests latency via non-streaming ping.buildPiAiProvider: builds the DSHllm-pi-aistructure (api: 'openai-completions').
lib/index.js: Cordis service module managing routes, credentials, and registering the/clineslash command.lib/client.js: Full-featured dedicated Settings section (settings.section, order 28) and plugin accordion (settings.plugin.item).
📦 Installation
dsh plugin --profile web add @goodandready/dsh-clinebot
💬 Slash-Command /cline
From any DSH chat session, type /cline to inspect quota:
### 🤖 ClinePass Status (ClinePass ($9.99/mo))
* Пинг хоста: ✅ 210 мс
* Активный ключ: CLINEBOT_API_KEY (credentials)
* Модель по умолчанию: `cline-pass/deepseek-v4-flash`
⏱ 5-часовое окно: [████░░░░░░] 42% (сброс: 18:00)
📅 Недельное окно: [██████░░░░] 60% (сброс: 08.09)
* Аккаунт: `developer@example.com`
⚙️ Configuration Reference (settings.yaml)
dsh-clinebot:
enabled: true
baseUrl: https://api.cline.bot/api/v1
apiKeyEnv: CLINEBOT_API_KEY
defaultModel: cline-pass/deepseek-v4-flash
timeoutMs: 15000
smokeTimeoutMs: 25000
enabledModels:
- cline-pass/deepseek-v4-flash
- cline-pass/deepseek-v4-pro
- cline-pass/kimi-k3
- cline-pass/qwen3.7-max
customModels: []
📄 License
MIT © GooDAnDReaDY