DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-model-manager

v

dsh-model-manager

Manifest valid

Import the models, providers, API keys and OAuth logins that other agent harnesses keep on your machine (opencode, Codex/ChatGPT, Claude Code, Gemini, Qwen, .env) into DeepSeek Harness, with a clean S

UI (client)hasBundlePatch

dsh-import-models

Import the models, providers, API keys and OAuth logins that other agent harnesses keep on this machine into DeepSeek Harness, then enable, disable and remove them from a Settings → Model Manager page.

What it reads

SourceFileBecomes
opencode~/.config/opencode/opencode.jsonc (providers, models, endpoints)llm-pi-ai provider routes + API-key credentials
opencode auth~/.local/share/opencode/auth.jsonAPI-key credentials (and routes when opencode declared a provider)
Codex / ChatGPT~/.codex/auth.jsonopenai-codex OAuth grant, or an OpenAI API-key route
Claude Code~/.claude/.credentials.json, ~/.claude/settings.jsonanthropic OAuth grant or API key
Gemini CLI~/.gemini/oauth_creds.jsongoogle OAuth grant
Qwen Code~/.qwen/oauth_creds.jsonqwen-token-plan OAuth grant
.env files<cwd>/.env, ~/.env, ~/.dsh/.env, ~/.config/dsh/.env, ~/.config/opencode/.envAPI-key credentials (keys are imported; endpoints are not guessed)

Every secret is redacted before it reaches the browser or the model: the page only sees hints like sk-ab…(51 chars). Imports re-read the source inside the Host, so a key value never travels through the page.

What you can do

  • Import — scan, tick what you want, preview the plan, import. Per-source "Import" buttons do the same for one harness.
  • Providers — disable (the route is stashed, not deleted), re-enable, or remove.
  • Models — open a route's model list, search it, disable or re-enable single models.
  • Add a provider — any OpenAI-compatible or Anthropic-compatible endpoint, with an optional key written straight to the credential store.
  • Agent tools — model_manager_sources, model_manager_plan, model_manager_import, model_manager_routes, model_manager_toggle_route, model_manager_toggle_model, model_manager_add_route, model_manager_remove_route, model_manager_set_secret.

Install

plugin_manager install_bundle  target: <path-to>/dsh-import-models

The bundle inserts one row:

- insert:
    - id: model-manager
      name: 'dsh-import-models'

Refresh the Web GUI once, then open Settings → Model Manager.

Config

KeyDefaultMeaning
enabledtrueTurn the plugin off without uninstalling.
allowWritetrueRefuse every import/toggle/add write (read-only page).
announceToAgenttrueAdd a short system-prompt section describing the tools.
stateFile~/.dsh/model-manager/state.jsonWhere disabled routes/models and extra .env paths are remembered.

How writes work

Only first-class Host seams, never a hand-edited file:

  • provider routes go through configEditor.edit() on the live llm-pi-ai row (falling back to settings.mutate('llm-pi-ai', …) when no editor is mounted);
  • API keys go to credentials.set(ref, value);
  • OAuth logins become the credential record llm-pi-ai/<route> ({ kind: 'grant', payload: { type: 'oauth', access, refresh, expires, accountId } }).

Disabling a provider stashes its route config in the plugin state file and removes it from the live config, so re-enabling restores it exactly. Model toggles rewrite the route's models array the same way.

Security

  • HTTP routes are loopback-only; writes additionally require a same-origin Origin/Host pair or Sec-Fetch-Site: same-origin.
  • No secret appears in a response, a log line, or the plugin state file.
  • Other harnesses' files are read only; nothing outside DSH is modified.

Limitations

  • OAuth grants are copied as-is. If the other harness already rotated the refresh token, import again.
  • .env keys that match no known provider are stored as credential references only.
  • The plugin performs no interactive sign-in of its own; use DSH's own Models page for that.
  • Non-chat models (embeddings, TTS, image generation) are filtered out of imported routes and counted in the plan summary.

License

MIT

Comments

Loading…

Similar plugins

dsh-codex-harness

by bainianlaoyao

Codex-shaped coding tools and agent presets for GPT models on DeepSeek Harness: exec_command, write_stdin, apply_patch and view_image, plus OpenAI Chat Completions and Responses API routes, bridged to

Workflow & AutomationModels & ProvidersManifest valid

★ 0

JavaScript

Sep 13, 2026

dsh plugin --profile web add dsh-codex-mode

by Lawrence7y

把其他 agent harness(opencode / Antigravity / claude / codex / ZCode / MiMo / Cursor / Qoder …)接入 DeepSeek Harness:作为 DSH 子代理派发任务、指定各家模型,并在设置页查看已配置的 harness

Manifest valid

★ 0

BSD-3-Clause

TypeScript

Oct 19, 2026

dsh plugin --profile web add @dsh-external/dsh-harness-pilot

by deepseek-harness-plugins-1121

OpenCode Go model provider for DeepSeek Harness - a maintained fork that keeps the model catalog reachable and configures itself from Settings > Models

Manifest valid

★ 4

↓ 81/wk

MIT

JavaScript

Sep 28, 2026

dsh plugin --profile web add dsh-opencode-go-plus

by Retr67

DeepSeek Harness (DSH) plugin: one-click OpenCode Go model sync in the settings panel - fetch all server models, probe availability & vision, write back to llm-pi-ai config

Manifest valid

★ 4

MIT

JavaScript

Oct 22, 2026

dsh plugin --profile web add dsh-opencode-models

by kkkkkkkkki

Import chat history & memory from other AI agents (Claude Code, Codex, Gemini CLI, Aider, Cline, OpenCode, Hermes, OpenClaw) into DeepSeek Harness

Manifest valid

★ 0

MIT

TypeScript

Aug 16, 2026

dsh plugin --profile web add @ersss/dsh-migrate

by kam74515-boop

Import local Codex, Grok, Claude, OpenCode, and CC Switch logins into DSH; pick sources and enable models in Settings.

Models & ProvidersManifest valid

★ 3

JavaScript

Aug 14, 2026

dsh plugin --profile web add dsh-everything-oauth