DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

Opencode Provider — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
O

dsh-opencode-provider

Opencode Provider

无需单独的提供商 API 密钥,即可在 DeepSeek Harness 中使用 OpenCode 模型。

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

npx -y @deepseek-ai/dsh plugin --profile web add dsh-opencode-provider@0.1.0
README兼容性版本

兼容性与来源证明

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

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/8/20

版本

0.1.0stable
2026/8/20

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
49.4 kB
文件数
13
Surface
any
许可证
MIT
发布源
npm
GitHub
★ 1
周下载
0
最近提交
2026/8/20
查看源码 ↗
README Badge

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

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

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

认领这个 Plugin →
报告问题

相关插件

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

Usage@linxin666/dsh-usage用于 dsh Web GUI 的使用统计插件:检测各提供商的余额和编码计划配额,并提供实时令牌使用记录,同时在侧边栏条目中显示当前会话提供商今日的使用量Usage Stats@ychris12138/dsh-usage-statsdsh Web GUI 的令牌使用热力图、提供商余额和订阅配额Codex Connectdsh-codex-connect用于 DeepSeek Harness 的 ChatGPT OAuth 和 Codex 模型。Ui Usage Billing@kenz1117/dsh-ui-usage-billingDeepSeek Harness 的用量计费仪表板:侧边栏成本指标和完整的仪表板模态窗口,依据当前多提供商目录定价,并汇总会话日志中的实际用量。

README

dsh-opencode-provider

Use models available through a local OpenCode server inside DeepSeek Harness without a DeepSeek API key.

Architecture

DeepSeek Harness (DSH)
  └─ LLM Runtime
       └─ opencode-local provider route
            └─ OpenCodeAdapter (dsh-opencode-provider)
                 ├─ POST /api/session              → create session
                 ├─ POST /api/session/{id}/prompt   → serialized conversation
                 ├─ GET  /api/session/{id}/event    → SSE stream
                 └─ POST /api/session/{id}/interrupt → best-effort cancel
                          ↕ HTTP + SSE
                   OpenCode Server (127.0.0.1:4096)
                          ↕
                   Model (mimo-v2.5-free)

The adapter serializes the full DSH conversation (system prompt + messages) into a single prompt string, sends it to the OpenCode server, and translates the SSE event stream into DSH StreamChunk values. OpenCode runs its own internal agent/tool loop, so the adapter exposes text output only — structured DSH tool calling is not available.

Verified Features

  • No API key required — connects to a local OpenCode server over plain HTTP
  • Streaming — text deltas are delivered as they arrive
  • Cancellation — abort signal tears down the SSE stream and interrupts the session
  • Timeouts — configurable SSE establishment (10 s), prompt admission (10 s), and terminal completion (120 s) limits
  • Retry policy — provider-level retry config forwarded to DSH runtime
  • Live SSE event formats — handles both legacy (session.text.delta, session.execution.succeeded) and current (session.next.text.delta, session.next.step.ended) event envelopes
  • Graceful fallback — unknown SSE events are skipped; non-JSON lines are ignored; data.wrapper envelopes are unwrapped defensively

Requirements

  • Node.js ≥ 22
  • OpenCode server running locally (default: http://127.0.0.1:4096)
  • DeepSeek Harness ≥ 0.1.0-rc.8

Installation

Via DSH plugin command

dsh plugin --profile web add dsh-opencode-provider

From source checkout

git clone https://github.com/goku54477/dsh-opencode-provider.git
cd dsh-opencode-provider
pnpm dsh

Quick Start

  1. Start the OpenCode server:
opencode serve --hostname 127.0.0.1 --port 4096
  1. The adapter auto-configures with the default base URL (http://127.0.0.1:4096). No additional setup is needed.

  2. In DeepSeek Harness, select the model:

opencode-local/mimo-v2.5-free

Configuration

All fields are optional. Defaults work out of the box with a local OpenCode server.

# Inside your DSH cordis.yml or plugin config
llm-opencode:
  # Endpoint of the OpenCode server
  baseURL: "http://127.0.0.1:4096"

  # Context window reported to the harness (default: 128000)
  defaultContextWindow: 128000

  # Max output tokens per request (default: 16384)
  maxTokens: 16384

  # Advisory model list for discovery consumers
  models:
    - id: mimo-v2.5-free
      name: mimo-v2.5-free
      description: "OpenCode local agent (text output only)"
      contextWindow: 128000

  # Retry policy
  retryPolicy:
    mode: always
    backoff:
      initialDelayMs: 100
      maxDelayMs: 5000
      jitterRatio: 0.2

How It Works

  1. Session creation — POST /api/session with { model: { id, providerID: "opencode" } }
  2. Concurrent SSE + prompt — the adapter fires the SSE subscription (GET /api/session/{id}/event) and prompt delivery (POST /api/session/{id}/prompt) concurrently. This avoids a deadlock where the OpenCode server withholds SSE headers until the session has activity.
  3. Conversation serialization — the full DSH conversation is formatted as [System]\n...\n\n[User]\n...\n\n[Assistant]\n... and embedded in the prompt.
  4. Event translation — SSE events (session.text.delta, session.next.step.ended, session.execution.succeeded, etc.) are mapped to DSH StreamChunk types (block-start, text-delta, block-end, finish).
  5. Cleanup — on completion, error, or abort, the adapter sends a best-effort interrupt to the session.

Development

# Build
npm run build

# Type-check
npm run typecheck

# Run tests
npm run test

# Build + test
npm run check

# Clean output
npm run clean

Security Warning

This plugin communicates with a local HTTP server (no TLS by default). Do not expose the OpenCode server to untrusted networks. The default binding (127.0.0.1) restricts access to the local machine.

Platform Compatibility

v0.1.0 has been tested on the following exact environment:

ComponentVersion
OSWindows 11
Node.js22.23.2
DeepSeek Harness0.1.0-rc.8
OpenCode1.18.19
Modelopencode/mimo-v2.5-free

Other platforms, Node versions, harness releases, OpenCode versions, and models have not been verified. The adapter may work elsewhere, but no guarantees are made.

Limitations

  • Text output only — OpenCode runs its own agent/tool loop. Structured tool calling exposed by DSH is not available through this adapter.
  • No multimodal support — the adapter reports inputModalities: ["text"] only. Image/audio/video inputs are not forwarded.
  • Single model advertised — the default catalog lists mimo-v2.5-free. Adding models requires manual config; the adapter does not dynamically discover available models from the server.
  • Prompt size — the entire conversation is serialized into a single prompt string. Very long conversations may exceed the model's context window.
  • No persistent sessions — each stream() call creates a fresh OpenCode session. Conversation state is not preserved across requests.
  • Local-only by default — the adapter expects the OpenCode server on 127.0.0.1. Remote servers require manual baseURL configuration and appropriate network access.

License

MIT