Preface¶
DeepSeek Harness (hereinafter referred to as DSH) is an open-source agent runtime developed by DeepSeek, with the slogan “Everything is a plugin”: model providers, tools, interfaces, and conversations can all be installed into the same process as plugins. The official repository is still in developer preview, and the APIs are subject to change. There is also a community-maintained plugin directory site for searching third-party plugins; it has no official affiliation with DeepSeek / Magic Square (Huanfang) and cannot be regarded as an official app store.
In actual implementation, the bottleneck often does not lie in DSH itself, but in where the quota comes from. Many companies do not directly issue platform keys for services like DeepSeek or OpenAI, but only provide internal WorkBuddy points. The default model list in DSH does not include “CodeBuddy China Region” either. The dsh-llm-codebuddy maintained by Axiaohungry was developed for this gap: it uses the API key issued by WorkBuddy to call CodeBuddy’s model services within DSH.
This article is cross-verified based on the plugin directory page, GitHub repository README, package.json / source code, and the dsh-llm-codebuddy@1.3.4 package on npm. The commands and interface steps in the article are subject to the repository README; the GitHub installation method provided by the directory page will be noted separately.
What is this¶
dsh-llm-codebuddy is a “model and provider” type plugin. After installation, it will register a provider named CodeBuddy 中国区 (internal id: codebuddy-cn) in DSH. You can fill in the API key obtained from WorkBuddy in the WebUI, pull the models available under your current account, modify the context window and maximum output tokens, and use it just like regular DSH conversations.
The repository README clearly states: the API key is provided by WorkBuddy, and the plugin uses this key to call CodeBuddy’s model interface; the provider name displayed in DSH remains CodeBuddy 中国区. The author also clarifies that this is a third-party adapter, not an official plugin from WorkBuddy, CodeBuddy or DSH.
Several easily confused names should be distinguished according to the plugin’s own instructions:
- WorkBuddy: The party that issues / provides API keys and points;
- CodeBuddy: The product side that uses this key for inference;
- dsh-llm-codebuddy: The community plugin that adapts the above services into DSH.
Do not mix up the path described in DeepSeek’s official documentation: “Configure DeepSeek API into WorkBuddy / CodeBuddy”. That path allows WorkBuddy to call DeepSeek, while this plugin allows DSH to utilize the existing WorkBuddy quotas from your company.
The license is MIT, and the main language is JavaScript. The current version in package.json is 1.3.4, and the npm package with the same name is consistent with the repository. As of 2026-08-17, the GitHub repository shows 13 stars; the community directory page showed 8 stars at that time, please refer to the real-time data of the repository.
Core Features¶
According to the README and source code, the current functions of the plugin can be divided into the following parts:
CodeBuddy 中国区will directly appear in the “Add Provider” section of the WebUI, without manually modifying the DSH global installation directory.- The configuration only requires a WorkBuddy API key. The key is saved via DSH’s credential service, and will not be written into the model directory or plugin source code. Entering a new key and saving will replace the old value; leaving the input box empty and saving will retain the original key.
- When clicking “Get Available Models”, the plugin requests CodeBuddy’s
/v3/configendpoint, and only imports the models authorized for the CLI Agent under the current key. The models visible in other accounts do not necessarily mean they can be imported under your account. You need to retrieve them again after switching keys. - After importing, you can modify the model ID, display name, context window, maximum output tokens, add or delete entries, and synchronize the catalog again. If there is no custom catalog, the online catalog will be used; if the online interface is temporarily unavailable, the built-in catalog of the plugin will be used as a fallback. Leaving known fields blank will inherit the online or built-in values; for new models lacking capacity information, the context window defaults to
262144and the maximum output defaults to32768. Clicking “Restore Default Models” will clear the custom catalog. - The reasoning effort follows the declarations of each model, rather than using a unified set for the entire site. The effort level set in the DSH interface will be converted to
reasoning_effortand sent to CodeBuddy, and the reasoning will be executed on the cloud. The candidate levels are:
off / minimal / low / medium / high / xhigh / max
Which levels actually appear depends on the `supportsReasoning`, `onlyReasoning`, `thinkingLevelMap` and `reasoning.effort` fields of the model in `/v3/config`. If not manually selected, the default level returned by the server for the model will be used; if the server does not declare it, it will not be forcibly specified.
- The author noted in the README that it has been verified on DSH
0.1.0-rc.6. The environment requirements are Windows / Linux / macOS, Node.js>= 22.19.0, and DSH has been installed locally. The installer comes with the requiredpnpm, so there is no need to install it globally. DSH is still in pre-release, and if the plugin interface is changed in the future, this plugin may need to be updated accordingly; regular DSH updates will not overwrite it.
Installation and Activation¶
The installation command provided by the community directory page is:
dsh plugin add github:Axiaohungry/dsh-llm-codebuddy
This is the unified GitHub source writing method for the directory site. For reproducible installation, the directory page recommends fixing the commit hash:
dsh plugin add github:Axiaohungry/dsh-llm-codebuddy#commit
Replace #commit with the actual commit hash. The plugin runs with the permissions of the current DSH process, and may execute code during installation. You should review the source code and license before installing.
The repository README recommends one-click installation via the npm package, which will also add the plugin to both DSH’s web and headless profiles:
npx --yes dsh-llm-codebuddy@latest install
You can also install it separately by profile:
dsh plugin --profile web add dsh-llm-codebuddy@latest
dsh plugin --profile headless add dsh-llm-codebuddy@latest
If you only use the WebUI, you only need to run the first command. Restart DSH after installation.
Do not mix up the two installation methods: the directory page uses the GitHub source; the author’s recommended method uses the published npm package, and the installer will also handle the profile and pnpm build strategy. For daily use, the npx ... install command from the README is more complete; if you insist on using the github: command from the directory page, you still need to check the repository content first, and confirm that the package appears in the Web Profile after installation.
Connecting the Model in the WebUI¶
Follow the steps from the README:
1. Open “Settings → Models”.
2. Click “Add Provider”.
3. Select CodeBuddy 中国区.
4. Enter the API key obtained from WorkBuddy and save it.
5. Click “Edit” for this provider again and expand “Custom Settings”.
6. Click “Get Available Models”, check the models you need, and import them.
7. Modify parameters such as context window and maximum output tokens as needed, then save.
When editing a configured provider again, the previously saved model catalog will be displayed directly.
If you cannot see CodeBuddy after installation, first confirm that you have restarted DSH, then check the Web Profile:
dsh plugin --profile web list --depth 0
If fetching models fails, confirm that the key comes from WorkBuddy and is still valid, re-enter it, and click “Get Available Models” again. When the interface is temporarily unavailable, the plugin will still provide the built-in catalog, but this is only a fallback and cannot represent the real permissions of your current account.
Working Principle¶
The call chain drawn in the README is:
WorkBuddy provides API Key
↓
DSH Agent → This Plugin → CodeBuddy /v2/chat/completions
↘ CodeBuddy /v3/config (Fetch Models)
The division of labor is also written in the same section: DSH is responsible for agent loops, context management, tool calls and permissions; WorkBuddy provides the key; the plugin is responsible for provider registration, model catalog conversion and request compatibility; CodeBuddy is responsible for inference and returning results.
The addresses currently used in the source code are https://copilot.tencent.com/v2 (for chat) and https://copilot.tencent.com/v3/config (for model catalog). The repository also includes a third-party development note, where the author clarifies that this is organized based on the installed client and actual interface responses, and is not a promised official Tencent API; the paths, headers and fields may be updated with CodeBuddy. This article only explains how the plugin currently connects, and does not treat these interfaces as stable public APIs.
The built-in fallback catalog includes several model IDs, such as deepseek-v4-pro, deepseek-v4-flash, glm-5.2, kimi-k2.7, minimax-m2.7, etc. They are only used when the online catalog is unavailable. Which models can actually be called still depends on the agents[name=cli].models field in /v3/config of the current key. The plugin will not forcibly display models that the current key is not authorized to use.
If the configured values exceed the real restrictions of the server, CodeBuddy may still directly reject the request. Filling in a large context window does not mean that the server will execute according to that number.
Update and Uninstall¶
Update¶
Re-run the installation command to pull the latest version:
npx --yes dsh-llm-codebuddy@latest install
Restart DSH after the update. The README states that the model configuration and API key will not be overwritten.
Uninstall¶
npx --yes dsh-llm-codebuddy@latest uninstall
The uninstall command will: back up ~/.dsh/settings.yaml; only delete the llm-pi-ai.providers.codebuddy-cn entry; retain other providers and DSH settings; remove the plugin from both the web and headless profiles; keep the API key credentials for future reinstallation. The backup file name will be similar to:
settings.yaml.codebuddy-backup-2026-08-14T12-00-00-000Z
The source code repository, local installation packages and API keys will not be deleted by this command. If the old interface still appears after uninstallation, shut down the running DSH process and restart it; running processes will not automatically unload plugins from memory.
Applicable Scenarios and Notes¶
This plugin is suitable for specific scenarios: you are already using DSH locally, your company or team only distributes WorkBuddy points, and you want to continue working within DSH’s agent loops, tools and permission models instead of switching to the CodeBuddy client. It works on Windows, Linux and macOS, provided that the Node.js version meets >= 22.19.0 and the DSH version is close to the verified 0.1.0-rc.6 — DSH is still iterating rapidly, and if the APIs change, you need to check whether the plugin has been updated accordingly.
It is not suitable to be understood as an “official model channel” or a “stable Tencent open API”. The author positions this project as a third-party adapter; the model catalog, reasoning effort levels and available model list are all bound to the current key, and the results may vary after switching keys. It is also not suitable to directly install any community plugin into a production environment without reviewing the source code first.
At least do the following before installation: open the GitHub repository to check the README and license; confirm that the installation command comes from the directory page or the original repository text, rather than verbal splicing; the plugin will run with the permissions of the current DSH process and may execute code during installation; if using the GitHub source, try to fix the commit. The API key should only be stored in DSH credentials or environment variables, and should not be written into Git.
Summary¶
dsh-llm-codebuddy solves a narrow but real gap: the quota is in WorkBuddy, while the workflow is in DSH. It registers CodeBuddy 中国区 as a DSH provider, uses the existing key to pull models, modify parameters, and send inference requests, without modifying the DSH global installation directory. Its capability boundary is also clear: third-party adaptation, authorization based on the key, and APIs that may change. You should review the source code before installing.
Directory page: https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-llm-codebuddy/
GitHub: https://github.com/Axiaohungry/dsh-llm-codebuddy