DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

dsh-provider-extension

Provider Extension

非官方的 DSH Desktop 提供商扩展:提供商/账户/模型控制、订阅配额和配置文件范围的使用统计

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:forestbiankiii/dsh-provider-extension#935e1594ff7858399ce7a8da21c36b0ba8e17d73
README兼容性版本

兼容性与来源证明

Provider Extension 以 dsh-provider-extension 发布,当前版本为 0.22.3。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/10/14

版本

0.22.3stable
2026/10/14
0.22.0stable
2026/10/14
0.21.0stable
2026/10/14
查看其余 24 个版本收起版本
0.20.0stable
2026/10/13
0.19.2stable
2026/10/13
0.19.1stable
2026/10/13
0.18.2stable
2026/10/12
0.18.0stable
2026/10/12
0.16.0stable
2026/10/12
0.12.0stable
2026/10/12
0.11.1stable
2026/10/11
0.10.1stable
2026/10/11
0.8.6stable
2026/10/11
0.8.5stable
2026/10/11
0.8.2stable
2026/10/10
0.8.1stable
2026/10/10
0.8.0stable
2026/10/6
0.7.9stable
2026/10/5
0.7.8stable
2026/10/5
0.7.7stable
2026/10/5
0.7.6stable
2026/10/5
0.7.4stable
2026/10/5

相关插件

正在加载相关插件…

最新版
0.22.3
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 3
周下载
0
最近提交
2026/10/14
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
0.7.3stable
2026/10/5
0.5.2stable
2026/9/16
0.5.1stable
2026/9/16
0.5.0stable
2026/9/16
0.4.0stable
2026/9/15

相关插件

继续浏览 models-usage 分类下经过校验的插件。

Experimental Cot Translation Bundle@deepseek-ai/dsh-experimental-cot-translation-bundle扩展推理的实验性机器翻译Our Free Model@ebony-vinyl/dsh-our-free-modelOur Free Model — 在 dsh 里装上这个插件即可,无需登录、注册或填 API Key,就能使用包括 DeepSeek V4.1 Flash、Kimi K3 在内的前沿模型,桌面端另有 EAC 协付渠道;2.0 起接入 LobsterAI、Qoder、TRAE、Cline、Loomy、Raccoon、MiniMax、ZCode、Gemini 十个账号渠道(原有匿名免费通道保留)(登录、账号池、积分领取、本地 OpenAI 网关与局域网转发、数据看板与运行日志),六页毛玻璃界面统一呈现。Usage@linxin666/dsh-usage用于 dsh Web GUI 的使用统计插件:检测各提供商的余额和编程套餐配额,并实时记录令牌使用情况;侧边栏 Settings 行上方显示紧凑的价格概览卡片Connect Workbuddydsh-connect-workbuddy把本机登录的 WorkBuddy 模型(国内版与国际版)接入 DeepSeek Harness:每次刷新按上游目录自动读取每个模型的积分倍率,支持逐模型图片输入开关、多账号切换与账号池自动换号,并提供每日签到、卡片与输入框里的胶囊积分读数等只读积分概览。

README

Provider Extension · 提供商拓展插件

简体中文

dsh-provider-extension is an unofficial community plugin for DeepSeek Harness that owns the composer's provider seat in DSH Desktop and hosts one integration module per provider.

This project is not affiliated with or endorsed by DeepSeek. DeepSeek Harness and related names are trademarks of their respective owners.

This project was previously published as dsh-model-panel. The installer migrates an existing installation automatically.

Provider integrations

ProviderStateWhat the plugin adds
ChatGPT / Codex subscription (dsh-codex-subscription 2.x)ImplementedLists every saved account, switches the real active account, and shows each account's weekly remaining quota
Antigravity (dsh-antigravity-auth 0.1.4-rc.1)ImplementedThe provider settings page acknowledges the companion's risk notice, signs in a Google account, and lists the models that account reports
OpenAI GPT (API)Planned—
Google GeminiPlanned—
OpenCode GoImplementedGateway models, API-key settings and usage windows
Claude subscription (anthropic-claude-cli)Implemented; live inference awaits user loginOfficial CLI-owned authentication, text streaming, tool-call handoff, model aliases and visibility switches

Each provider gets its own module under src/client/providers/. Nothing is claimed as integrated until it is implemented and accepted in a real DSH window.

Host integrations are included in this bundle, with upstream provenance and licenses recorded in THIRD-PARTY-NOTICES. Do not enable a second adapter owning the same route. Antigravity and Codex credentials stay in their Host integrations; Claude differs by leaving authentication entirely to the official CLI.

Codex response detail

Open Providers → OpenAI Codex and choose Default / Concise / Balanced / Detailed under Response detail. Both quick and full views share this one preference for the current DSH profile. Changes save through the native configuration editor and affect subsequent Codex requests only; they neither switch models/accounts nor alter other providers or search. Default follows the model's reported default, falling back to the adapter's usual balanced setting. Models that report no verbosity support retain their original behavior. This is a style preference, not a hard response-length limit.

The control displays acknowledged saves and failures; Hosts without persistent configuration editing are read-only. The deferred codex_output_verbosity tool reads/sets this same narrow preference. Restart DSH after updating the linked build, then test the preference and retention after another restart. Subsequent feature additions require separate user approval, as recorded in CODEX-ROADMAP.md.

Codex context length

In OpenAI Codex → Manage settings, Context length offers Standard (model defaults), Extended (model maxima), or Custom. The current effective size for each model is shown below the mode. Custom edits one shared profile-wide value such as 256k; 1k means 1,000 tokens. Models use that value up to their own catalog maximum, so a smaller model cannot inherit another model's higher limit. Mode changes save automatically; custom size saves when you press Save. Larger contexts may use more input tokens and do not unlock server access.

Existing per-model overrides are kept in native config for compatibility, but the UI no longer edits them separately. The shared value applies to future requests; prepared calls retain their prior capacity. Restart DSH after updating, then test Custom k value and persistence after a second restart. The context tool also reads/writes one tokensK value. Automated tests use mocked config and provider streams.

Codex quota details

The Composer quota tooltip and each Codex account's expanded details show 5h/week windows only when the provider reports them, plus any additional rate-limit groups, Credits and an individual spending cap when present. Credits are not currency; credit balances and spend-cap values are shown as reported, with no inferred unit or currency conversion. The Usage page already has separate provider balance cards and reset-credit details. No additional inference calls are made for this display.

Codex image tools

In OpenAI Codex → Manage settings, the separate Image generation and Image editing switches control tool availability. They save to native config and changing them does not start an image request; an explicit image request may use subscription quota. The switches are user-only and cannot be enabled through an Agent settings tool. In Codex-routed sessions, explicit image-output requests are directed to codex_image_generate; image discussion alone does not call it, disabled switches are not bypassed, and other provider routes are unchanged. They do not alter input-image handling or model/quality defaults. Annotated edits require Image editing to be enabled.

Codex original image

For a completed codex_image_generate call, the generated image is also rendered below the assistant answer, even when tool-call details are collapsed. Its image card keeps the preview and offers View original and Download PNG. The original is read from the DSH Host's private store, scoped to the current Session and validated in bounded chunks. This makes no image-provider request and uses no additional subscription quota. When an original is unavailable, the card reports it instead of reading an arbitrary host path.

Codex annotated edits

Click a thumbnail to open a large modal viewer. The floating toolbar provides zoom/pan, fit/actual size, original download, numbered notes, erase-mask brush, background removal, aspect-ratio edits and the sketch board. Images cannot be browser-dragged: use Move to pan, Annotate to add numbered pins, and drag existing pins to reposition them. Enter closes a note; Shift+Enter adds a line.

With Image editing and annotations enabled, Continue editing prepares the clean source, a numbered PNG location reference and coordinate/note prompt in the current Codex composer. Erase prepares a same-size black/white region mask instead. Nothing modifies the saved original or submits automatically. Existing images/reference chips are not overwritten, and a draft revision change during preparation cancels the handoff. Review the draft and press Send; editing may use subscription quota.

An image you paste, upload, or send from the sketch board's Attach to composer is already a usable edit reference: the assistant passes the image's sha256 id to the edit tool, and DSH reads the byte size, format and dimensions from the current session. You do not need to upload it again or supply a workspace path. References come from the complete session history, so an image sent earlier still works after summarization or image offloading. Only images you selected in this session are accepted; read_image stays for genuine workspace files.

Codex sketch board

Open Sketch board using the pen icon in the Codex composer's left tool row (hover for its label), or in the large-image toolbar. Draw with pen/pencil/highlighter, brush/object erasers, lines, arrows, rectangles, ellipses, editable curves and text. Select objects to move, scale and recolor them. Layers support add/duplicate/delete/reorder/show/hide/lock; brush erasure affects only its own layer. Ctrl/Cmd+Z undoes, Shift+Ctrl/Cmd+Z redoes, and Space+drag pans after the canvas has focus.

Import PNG/JPEG/WebP as image layers, export PNG or this extension's editable JSON document, and save up to 20 local drafts in the current browser. Closing/reopening keeps an unsaved drawing within the page, but save/export before refresh or exit. The JSON format is not guaranteed compatible with upstream sketch documents.

Attach to composer only prepares the sketch and prompt; add the desired finished-image instructions and send explicitly. This increment does not enable Agent drawing or change input precision/output quality defaults.

Codex subscription tasks on DSH

Enable Provider Extension → OpenAI Codex → Manage settings → Enable Codex delegation (off by default). This creates fresh DSH child sessions using this plugin's Codex subscription route, not the official Codex CLI. No component installation is needed and changing the preference makes no model request. Existing subagent and subagent_fork tools are unchanged.

In a Codex session, explicitly ask the assistant to use codex_subtask with a complete, self-contained task. Optional model and reasoning_effort must be advertised/supported; omission uses the current model and compatible effort, while a different model with no effort uses that model's default. Explicit selection respects DSH subagent model restrictions. The parent model does not change.

The child uses the parent's workspace, DSH delegated permissions and recursion limits, but not the parent conversation. Foreground waits for the final answer. run_in_background: true returns an owned job id for job_output or job_kill; cancellation does not roll back edits. Turning the toggle off stops new tasks only; unloading this plugin cancels and drains its tasks. Child model calls consume subscription usage; synthetic tests do not make paid requests.

The official native CLI execution path is not shipped because its public APIs cannot reliably isolate system/project MCP configuration. There is no silent fallback to it.

Codex cloud context compression (experimental)

In OpenAI Codex → Manage settings → Cloud context compression, choose DSH (default) or Cloud (experimental). Saving makes no model request. Cloud adds server-side inline compaction parameters to ordinary Codex conversation requests, not a separate /responses/compact call. Other providers, title generation and native DSH summary requests are unchanged.

When the server emits compaction, its encrypted item and following output are kept in native durable replay metadata. Reuse requires matching account/model/session, native provenance and request boundaries. Only the wire request window is pruned; original chat history stays intact. Account/model changes, forks or altered tools/history invalidate the cache and rebuild requests from retained history. DSH manual /compact and automatic safety compaction keep their existing behavior.

This is an experimental request parameter. Offline fixtures do not establish ChatGPT subscription support. Backend rejection or a mismatched native replay boundary is surfaced, not silently switched to another mode or given new retries. You can select DSH (default) to continue. Existing DSH recovery policy remains unchanged; this does not guarantee a fix for upstream request-buffer errors.

Cloud compaction may consume subscription usage and lose contextual details; encrypted items are not readable summaries. Verification uses synthetic HTTP, never your live conversation. Cloud mode is mutually exclusive with WebSocket; native review-model features are not enabled.

Codex WebSocket connection (experimental)

Choose OpenAI Codex → Manage settings → Codex connection → SSE (default) or WebSocket (experimental). Saving changes only the preference; it does not open a socket or start a model request. Only ordinary Codex conversation replies use the optional transport. Title/native-summary requests stay SSE; other providers and search routing are unchanged.

This uses the native SDK protocol and connection reuse while still sending full context. It does not enable previous_response_id incremental caching or guarantee faster/cheaper inference. Sockets are isolated by plugin instance, session, actual account and resolved proxy, using existing environment/system proxy selection. Failure does not actually fall back to SSE or change account/model; explicitly select SSE if needed. Existing bounded SDK connection recovery and DSH error policy remain; no retry setting is added.

WebSocket and cloud compression are mutually exclusive. Select DSH (default) compression before enabling WebSocket; select SSE before enabling cloud compression. Both native config writes and request admission validate the exclusion instead of silently disabling another preference.

Switching to SSE retires idle sockets and lets accepted WebSocket streams finish before release. Cancellation, session teardown, account changes/removal, sign-out and plugin unload clean up owned connections; account changes/unload may interrupt an active request. Offline validation uses fake sockets and never contacts the model service. Actual subscription/proxy support remains user acceptance.

Codex speed mode

In OpenAI Codex → Manage settings, select Standard or Fast. It saves the Codex-profile preference for subsequent requests. The existing catalog capability determines which models can actually receive the Fast priority tier; other models keep standard behavior, and an empty advertised support list is shown in the panel. Fast does not change reasoning effort, model, account or other providers and may consume subscription quota faster. It does not unlock access.

The shared native config editor persists this preference. The deferred codex_speed_mode tool reads and sets the same operation. After updating the linked build, restart DSH and test a supported model in both modes, then restart again to verify persistence. Automated payload tests use mocked streams and make no billable calls. Ultrafast is not included.

Claude subscription via the official CLI

Install the unmodified official Claude Code CLI on PATH, restart DSH, then open Provider Extension → Anthropic Claude. The login button opens the official claude auth login in a visible Windows terminal; other platforms show the same command to run yourself. Finish login and refresh status. Choose Anthropic Claude and a Sonnet/Opus/Haiku alias in the composer. Authentication and account switching stay in the CLI: this extension never imports, stores, exports or rewrites its tokens. The current CLI authentication may instead use API-key/third-party billing; the settings view displays that distinction. Follow Anthropic’s authentication and credential rules.

The MIT adapter is adapted from katsos/dsh-claude-cli, pinned at 3a3a57f22a3e748c9720a1b96ce64e015f0f9643. DSH owns the conversation and executes tools; the CLI's built-in tools and local settings are disabled, and an inert MCP bridge supplies tool schemas only. Streams stop after one model message. This first version is text-only and re-renders history as a transcript, not native role-preserving replay; model aliases are advisory, not discovered account entitlements. Unreported subscription quotas/end dates remain unknown; use /usage in the CLI rather than extracting tokens or making paid quota probes.

Plugin Config fields: claudeExecutable (default claude), claudeStreamIdleTimeoutMs (default 300000), claudeUnsupportedFields (default error). The CLI cannot honor temperature, maxTokens or stop here: remove them from the agent configuration or explicitly choose ignore to drop them. claude_channel offers read-only status/models to agents; only the UI/user terminal can start login. Installation/status and synthetic streaming tests do not establish live provider availability until your own login and request succeed.

Features

  • Uses DSH's authoritative per-session ModelDirectory; it does not create a second model catalog.
  • Replaces the shipped conversation.input.model visual seat while keeping its authoritative service and /model command.
  • Renders exactly two model-related controls: a provider/account picker followed by a model/reasoning picker.
  • Shows the chosen provider's models as accent-colored effort sliders, and the active model's declared reasoning-effort buttons.
  • Keeps models without reasoning controls selectable.
  • Choosing an ordinary provider changes the browsed catalog group; the active session model changes only after a model is chosen.
  • Reports unsupported context-window selection honestly instead of showing fake 256K/512K/1M controls.

Usage Statistics (included in this bundle)

The sidebar Usage Statistics page covers every workspace, session and subagent in the current DSH configuration, without cross-profile synchronization. It includes a yearly activity heatmap, usage trends, provider/model/workspace/session rankings and request latency, first-token, retry and failure metrics. It follows the DSH theme and adds no budget notices or automatic request limits.

The first visit imports persisted session history in the background and displays progress and read failures. Fork-inherited prefixes are excluded from physical request totals; original requests remain counted after conversation compaction. Unreported token usage is marked missing, not zero.

DeepSeek recharge and bonus wallets reuse the DSH account login. The existing Usage action opens Platform, not a billing-data API. Wallet changes are not a spending ledger. Monetary figures are estimates using the currently configured per-channel/model rates per million tokens, not historical prices or actual bills. Missing rates or ambiguous cache accounting stay unknown; currencies remain separate. Other providers are not priced in this first version.

The account section also reads real Codex per-account 5-hour/weekly quotas and provider credits, per-account Antigravity group quotas, and OpenCode Go's Host-side usage API. It never switches accounts or sends secrets to the page. Both current and inactive saved accounts are queried directly with their own refreshable authentication; unsupported channels are labeled explicitly; missing data is not 100% remaining or zero money. OpenCode's reported percent is not reinterpreted as remaining. Re-entering the page immediately shows the last account snapshot for the same connection while refreshing in the background; checked timestamps remain unchanged until new results arrive. Failed requests retain the previous snapshot with an explicit warning. This browser-memory snapshot is cleared on reload, not persisted to browser storage. Refresh is entry/manual, independent of log filters. The usage_statistics action balances returns this same combined account view; balance remains the legacy DeepSeek-only operation.

Account cards can be dragged by their grip to change order, or moved with the grip's arrow keys. “Choose visible cards” provides per-account checkboxes and up/down controls; each card also has a hide button. Restore default layout to reset order and visibility. Only card IDs and display preferences are kept in browser local storage, not balances, labels or tokens. New accounts are appended without disturbing the saved order, and hiding a card does not change authentication or provider queries.

DSH session projections own the rebuildable usage cache; the Host stores rates within the current configuration. The page and usage_statistics tool share report, balance and pricing operations. Reports expose metadata and counters, not message content or credentials. Required Host capabilities are sessionQuery, sessionProjections and connection; saving rates additionally requires storageDomain.

Install or upgrade this bundle through DSH's Plugin Manager to include the page. Replacing a loaded package may require restart; follow the installation result rather than assuming a browser refresh reloads Host code.

ChatGPT / Codex subscription accounts

  • Every saved account is listed under its provider with its label, masked email, and active marker.
  • The header shows the account count instead of a model count.
  • Selecting an account calls the subscription plugin's authenticated account/select RPC, refreshes its quota indicator, and reloads the model directory. OAuth credentials never reach this plugin.
  • The active account's weekly remaining quota is read automatically when the list opens.
  • The existing composer/settings controller still reads another account on demand through a temporary switch/restore and reports a failed restore. The Usage Statistics page uses the new account-specific read path instead: no switch, and a failed targeted request never falls back to another account's quota.

Compatibility

Verified in DSH Desktop v2.0.9 against the public 0.1.2-rc.1 DSH package contracts. Those contracts are pre-release APIs, so newer Desktop versions may require a plugin update.

The current selection request is limited to:

{ provider: string, model: string, reasoningEffort?: string }

A real context budget requires Host request preparation, persistence, provider support, and compaction integration. Catalog metadata alone is not treated as a working backend capability.

Install

Requirements: DSH Desktop with an initialized desktop profile, Git, and Node.js 20 or newer.

git clone https://github.com/forestbiankiii/dsh-provider-extension.git
cd dsh-provider-extension
node scripts/profile.mjs install

The repository includes prebuilt lib/index.js and lib/client.js, so installation does not require npm install or a compiler.

The installer:

  1. removes every earlier package name (dsh-model-panel, @dshx/client-ui-model-panel) from dependencies, bundles, patch rows, and runtime copies;
  2. copies an allow-listed runtime package to ~/.dsh/local-plugins/dsh-provider-extension;
  3. declares a local file dependency in ~/.dsh/profiles/desktop/package.json;
  4. copies the runtime into the profile's node_modules for immediate resolution;
  5. adds dsh-provider-extension exactly once to dsh.profile.bundles;
  6. removes legacy/manual provider-extension and model-panel rows from the user patch so the bundle cannot be registered twice;
  7. backs up both edited profile files first.

It never edits the installed application or app.asar. If your home or profile differs:

node scripts/profile.mjs install --dsh-home D:\path\to\.dsh --profile desktop

Then fully quit and restart DSH Desktop. Reloading the page is insufficient when changing the composed plugin rows.

Update

From the cloned repository:

git pull --ff-only
node scripts/profile.mjs install

Restart DSH Desktop afterward. Re-running the installer is idempotent and creates a fresh backup.

Upgrading from dsh-model-panel needs no extra step: running the installer performs the migration, including removing the old runtime copies.

Uninstall

From the cloned repository:

node scripts/profile.mjs uninstall

Restart DSH Desktop afterward. The uninstaller removes only this plugin's exact dependency, bundle entry, legacy/manual patch rows, and runtime copies, while preserving a backup of the edited profile files.

Develop

npm ci
npm run check

npm run check performs strict TypeScript checking, component/policy/installer tests, rebuilds the DSH client-module artifact, and verifies the publishable package. The dedicated builder uses esbuild plus Lightning CSS, externalizes DSH-provided runtime modules, and wraps browser output in window.__ModuleLoader__.load(...).

UI and runtime changes must pass the real-window acceptance gate documented in CONTRIBUTING.md: install the candidate locally, let the requester try it in the current DSH Desktop window, and wait for explicit approval before any push, tag, or release.

Architecture

  • src/index.ts — Host provider integrations and usage-module mounting.
  • src/usage/ — secret-free metering projection, historical import, reporting, DeepSeek wallets and rate storage.
  • src/client/usage/ — statistics main panel, sidebar entry, filters and charts.
  • src/client/index.ts — client registration and lifecycle-owned stylesheet.
  • src/client/ProviderPanel.tsx — composer triggers, popovers, sliders, and accessibility behavior.
  • src/client/providers/codex.ts — ChatGPT/Codex subscription roster, account switching, and quota reads.
  • src/client/selection.ts — pure model/effort selection policy.
  • cordis.patch.yml — bundle patch registering the provider-extension row.
  • scripts/profile.mjs — backup-first profile installer/uninstaller and rename migration.
  • lib/client.js — prebuilt browser artifact consumed by DSH.

The plugin declares sessions, remote, and remote.session because modelDirectories.directoryFor(sessionId) reads those services through the caller's Cordis context.

Privacy and security

The plugin includes Host provider integrations and Client UI. Usage reporting reads metering, model, timing and relationship records through the Host session query/projection services. Its reports expose only statistics and session metadata, not message bodies or credentials. DeepSeek wallets use the Host account service; the usage feature does not read separate keys or switch provider accounts. Provider authentication and network access have a different permission boundary from usage reporting. No telemetry is added. See SECURITY.md.

License

MIT