DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

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

dsh-local-llm

Local Llm

用于在本地运行 GGUF 模型且无需 Ollama 的 DeepSeek Harness 插件

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

npx -y @deepseek-ai/dsh plugin --profile web add github:wertyBSd/dsh-local-llm#eab6f414d1303c434538d2bc38e08d67328a4277
README兼容性版本

兼容性与来源证明

Local Llm 以 dsh-local-llm 发布,当前版本为 0.1.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

0.1.1stable
2026/8/24

相关插件

正在加载相关插件…

最新版
0.1.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 2
周下载
0
最近提交
2026/8/26
查看源码 ↗
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-local-llm

A DeepSeek Harness plugin for managing local GGUF models and serving them through llama-server — no Ollama required.

dsh plugin --profile web add https://github.com/wertyBSd/dsh-local-llm

The llama-server runtime is downloaded from the plugin UI and started only when the user clicks the start button. Requests made before the server is ready return a clear error.

Features

  • Download GGUF models from Hugging Face or a direct URL.
  • Search the built-in model catalog.
  • Add any model by pasting a direct .gguf URL.
  • Display downloaded models and file sizes.
  • Stream download progress to the UI through SSE.
  • Delete downloaded models.
  • Prevent path traversal through model filenames.
  • Follow HTTP redirects and clean up incomplete downloads.
  • Deduplicate concurrent downloads of the same model.
  • Automatically choose a suitable context size for the selected model.
  • Detect when TinyLlama cannot fit the Harness prompt before sending the request.
  • Provide an on/off server indicator in the sidebar footer.

Requirements

  • Node.js 18 or newer.
  • DeepSeek Harness with the llm and webServer services.
  • A local inference runtime for text generation.

The @deepseek-ai/cordis package provides the Cordis runtime. The llm and webServer services must be provided by Harness or its plugins.

Installation and Build

npm install
npm run build

The host plugin entry point is dist/index.js. The sidebar client bundle is dist/client.js.

The package manifest exposes dsh.bundle and dsh.client. After restarting Harness, the plugin is loaded into the client graph.

For a local Windows installation, run:

Set-Location C:\git\dsh-local-llm
npm install
npm run build

Set-Location C:\git\deepseek-harness
pnpm dsh plugin --profile web add C:\git\dsh-local-llm
pnpm dsh --profile web --dump-config | Select-String dsh-local-llm

The verification output should contain name: dsh-local-llm. Stop any running Harness process completely and start it again:

pnpm dsh web

Refreshing the browser page is not enough because the client plugin graph is built when the web profile starts.

Development commands:

npm run dev       # watch TypeScript compilation
npm run dev:ui    # watch UI build

Configuration

Example configuration:

{
  "model": "mistral-7b-instruct-v0.3-Q4_K_M.gguf",
  "modelPath": "",
  "runtimeUrl": "http://127.0.0.1:8080",
  "contextSize": 8192,
  "autoContextSize": true,
  "port": 8080,
  "downloadDir": "./models"
}

Parameters:

  • model - a built-in model name or a direct URL to a .gguf file.
  • modelPath - a path to an existing model file. If omitted, the configured model is downloaded automatically.
  • runtimeUrl - the URL of an OpenAI-compatible local runtime such as llama-server.
  • contextSize - the minimum context size passed to llama-server, in tokens. The default is 8192.
  • autoContextSize - automatically choose a model-dependent context size. Enabled by default.
  • port - a plugin configuration value; the Harness web server owns its HTTP port.
  • downloadDir - the model directory. Defaults to ./models.

Built-in model names include:

  • mistral-7b-instruct-v0.3-Q4_K_M.gguf;
  • llama-3-8b-instruct-q4_K_M.gguf;
  • deepseek-coder-6.7b-instruct-q4_K_M.gguf;
  • qwen-2.5-7b-instruct-q4_K_M.gguf.

Local Server

The server is not downloaded or started automatically. Open Local models, click Download and install server, wait for installation to finish, select a downloaded model, and click Start. The plugin downloads llama-server from the official ggml-org/llama.cpp release and binds it to 127.0.0.1.

Server parameters:

  • serverDir - the binary and log directory. Defaults to ./llama-server.
  • serverUrl - an optional direct server archive URL. If empty, a compatible archive is selected from the latest GitHub release.
  • serverBuild - selects the runtime build: auto prefers CUDA and falls back to CPU, cuda requires a CUDA archive, and cpu forces a non-CUDA archive. Defaults to auto.

The model manager includes a server build selector. Stop the server before switching builds, choose CUDA, CPU, or Automatic, and click Install selected build. The selected mode is persisted in the browser, and the installed mode is recorded in server-build.json inside serverDir, so the choice survives Harness restarts. Switching from one installed build to another replaces the runtime files in serverDir.

  • serverPort - the llama-server port. Defaults to 8080.
  • contextSize - the minimum context size in tokens. Harness system instructions and tools may require a larger value; the plugin never starts the managed server below 8192 tokens.
  • autoContextSize - when enabled, regular models use at least 16384 tokens; TinyLlama is capped by its model limit of 2048 tokens.

The server is restarted automatically when a different model is selected, so the new model's context size takes effect. The active context size is included in the server status. The server log is written to llama-server/llama-server.log.

After changing the context settings or updating the plugin, stop and start the managed server once so the new --ctx-size value is applied. TinyLlama reports an available context of 2048 because that is its model limit. The adapter estimates request size and rejects oversized Harness prompts before sending them.

Localization

The model manager is available in English, Russian, Chinese, French, Spanish, Italian, Polish, German, Hindi, and Japanese. English is used by default. The selected language is stored in the browser and applies to the model window, errors, server controls, and the local models indicator.

API

  • GET /api/local-llm/models - list downloaded models.
  • POST /api/local-llm/download with { "model": "model-file.gguf" } - download a model.
  • GET /api/local-llm/progress?model=... - receive download progress as SSE.
  • POST /api/local-llm/delete with { "model": "model-file.gguf" } - delete a model.
  • GET /api/local-llm/server/status - get server status.
  • POST /api/local-llm/server/install - download and extract the server.
  • POST /api/local-llm/server/start with { "model": "model-file.gguf" } - start the server with a model.
  • POST /api/local-llm/server/stop - stop the server.

Harness Integration

The plugin registers local-llm in the configurable provider directory and activates it through registerAdapter(['local-llm'], ...). The provider becomes available in the Harness model selector after restarting the web profile.

The adapter sends streaming requests to ${runtimeUrl}/v1/chat/completions. If runtimeUrl is empty, it uses the server started by the plugin at http://127.0.0.1:8080. Harness tools are converted to the OpenAI function-tool format, and the adapter waits for /health before sending a request.

The optional sidebar placement immediately after New session requires the local DeepSeek Harness shell slot sidebar.after-new-session. Without that local shell patch, the plugin remains compatible with the standard footer action slot.

Known Limitations

  • The built-in catalog uses fixed Hugging Face URLs.
  • Downloaded files are not verified against a checksum.
  • SSE behavior depends on the DeepSeek Harness web server implementation.
  • Text generation is unavailable until the server is installed, started, and ready.

License

MIT