Introduction

When developing agents using DeepSeek Harness (DSH) and wishing to reuse models from the CodeBuddy platform, you typically have to handle OAuth authorization manually, maintain tokens, and manually enter the models available to the account into the configuration. When account models change, the configuration needs to be updated as well, and it is easy to make errors regarding where credentials are stored.

dsh-codebuddy solves this problem by turning CodeBuddy’s OAuth login, dynamic model directory, and reasoning level selection into a standard DSH plugin. Below is an introduction to its capabilities, installation method, and daily usage.

What is this

dsh-codebuddy is a DeepSeek Harness plugin maintained by Lbryany, designed to provide CodeBuddy OAuth, dynamic models, and reasoning level control for DSH. Current version 0.1.1, npm package name @lbryany/dsh-codebuddy, license is MIT.

The philosophy of DSH is “everything is a plugin,” meaning login methods and model sources can be extended through plugins. This plugin follows this path to integrate CodeBuddy: log in once, and the model selector will have the current account’s models and reasoning levels available.

Core Features

According to the README, the plugin provides the following capabilities:

  • /codebuddy-login [site] to log in to the domestic, international, or custom CodeBuddy site;
  • Displays a separate CodeBuddy category in the dsh model selector;
  • Dynamically loads the models available to the current account after logging in;
  • Supports Off / Minimal / Low / Medium / High / Xhigh / Max reasoning levels;
  • OAuth credentials are persisted via the dsh Credential Store, and the model directory is automatically restored after restarting;
  • Provides /codebuddy-status and /codebuddy-logout.

Regarding credentials, OAuth credentials are stored in the dsh credential reference CODEBUDDY_OAUTH, and the plugin does not write access tokens or refresh tokens to the logs.

Prerequisites

  • DeepSeek Harness 0.1.0-rc.6
  • Node.js 22.19+ or 24+ (engines in package.json is ^22.19.0 || >=24.0.0)

Installation and Usage

First, install the plugin to the same profile as the actual running Web application, then start the application:

dsh plugin --profile web add github:Lbryany/dsh-codebuddy
dsh web

The first command pulls from GitHub and registers the plugin to the web profile, the second starts the DSH Web application. If the Web application uses a custom profile, replace web with the corresponding name and start with dsh --profile <name>.

After the above steps, the plugin is active. Next, log in via the input box.

Login and Usage

Execute in the dsh input box:

/codebuddy-login cn

Rules for the site parameter are as follows:

  • cn / china: corresponds to https://copilot.tencent.com;
  • global / intl or leave blank: corresponds to https://www.codebuddy.ai;
  • You can also pass in a complete http(s) site URL.

After successful browser authorization, the model selector will appear with a CodeBuddy category, the current account’s model list, and selectable reasoning levels. Use /codebuddy-status to check login status daily, and /codebuddy-logout when switching accounts or logging out.

Update and Uninstall

Updating only requires running the installation command once to reinstall the latest GitHub version:

dsh plugin --profile web add github:Lbryany/dsh-codebuddy

When uninstalling, replace add with remove and use the npm package name:

dsh plugin --profile web remove @lbryany/dsh-codebuddy

Build and Install from Source

If you want to review or modify the code, you can first clone and build, then install from the local package:

git clone https://github.com/Lbryany/dsh-codebuddy.git
cd dsh-codebuddy
npm ci
npm run check
npm pack --ignore-scripts
dsh plugin --profile web add ./lbryany-dsh-codebuddy-0.1.1.tgz
dsh web

Here, npm run check executes type checking, testing, and building sequentially, and npm pack --ignore-scripts generates an installable tgz package.

One implementation detail: The repository commits lib/ along with the source, allowing dsh to install directly from GitHub; CI verifies that the committed bundle is consistent with the source build output.

Suitable Scenarios and Notes

The suitable scenarios are clear: if you are already using DSH, have a CodeBuddy account, and wish to reuse models under that account via OAuth without the need to manually maintain tokens and model lists.

Two points to note before installation:

  1. The plugin runs with the permissions of the current dsh process. Installing a third-party plugin extends the boundaries of DSH’s capabilities; it is recommended to read the source code before deciding whether to install;
  2. The plugin uses the MIT license (see the License section in README and the license field in package.json). Although credentials are stored in the dsh Credential Store and are not written to logs, it is still a necessary step to check the credential handling logic before installation.

Conclusion

Overall, dsh-codebuddy condenses CodeBuddy’s login, dynamic model directory, and reasoning level control into two commands: one for installation, one for login, after which model selection is completed in the dsh model selector. Project address and community directory page:

  • GitHub: https://github.com/Lbryany/dsh-codebuddy
  • Community directory page: https://www.skillhub.cn/plugins/Lbryany/dsh-codebuddy

It should be noted that this directory is a community site maintained independently and has no official affiliation with DeepSeek / Hyperbolic.