Preface

In the plugin system of DeepSeek Harness (DSH), a model provider can be integrated as an independent component. For developers already using DSH, common challenges include managing the login state, credential storage, and token refresh for external models, as well as sourcing the model list.

The dsh-openai-oauth plugin does something quite specific: it connects DSH’s LLM interface to the official local Codex app-server, which handles ChatGPT login, credential storage, token refresh, and model access. You do not need to prepare a separate OpenAI API key, nor do you need to maintain a fixed list of GPT versions within DSH.

This introduction covers the plugin’s positioning, installation method, typical usage, and important operational boundaries.

What Is This

dsh-openai-oauth is a DeepSeek Harness LLM provider plugin that uses managed ChatGPT OAuth to connect to Codex models.

  • Package name: dsh-openai-oauth
  • Maintainer: DGPisces
  • License: MIT
  • GitHub: https://github.com/DGPisces/dsh-openai-oauth

It is described as an independent community plugin, not an official product of DeepSeek or OpenAI. DSH’s philosophy is “everything is a plugin,” but this plugin should be viewed as a community component and not as an official application from an official app store.

Core Features

This plugin’s capabilities focus on “login, credentials, model access, and DSH integration.”

  • Uses models from a ChatGPT account as the primary model for DeepSeek Harness.
  • Connects DSH’s LLM interface to the official local Codex app-server, which handles:
  • ChatGPT login
  • Credential storage
  • Token refresh
  • Model access
  • Does not require an OpenAI API key.
  • Registers to the web and headless profiles upon installation, as well as to any existing custom profiles.
  • Allows selection of provider and model via the DSH interface or by writing to ~/.dsh/settings.yaml.
  • Model lists are read from the currently logged-in Codex account; no hardcoded GPT version list is maintained within the plugin.
  • Supports uninstallation; also supports optional authentication cleanup.

The documentation explicitly states that this package does not:

  • Copy auth.json from another Codex installation
  • Implement its own OAuth client
  • Call undocumented ChatGPT endpoints

Requirements

Before installation, confirm that your environment meets the following requirements.

  • Node.js: 22.19 or higher
  • DeepSeek Harness: developer preview 0.1.0-rc.6
  • ChatGPT account: with Codex access

The following peer dependencies in package.json are marked as optional:

  • @deepseek-ai/cordis: ^4.0.1
  • @deepseek-ai/dsh-host-webserver: >=0.1.0-rc.5
  • @deepseek-ai/dsh-llm: >=0.1.0-rc.5
  • react: ^18.2.0

Installation and Enabling

First, run the installation command:

npx -y dsh-openai-oauth install

This command registers the package to DSH’s web profile, headless profile, and any existing custom profiles.

If you create a new custom profile later, you can run the installation command again to register it to the new profile.

Logging in to ChatGPT

Web Interface Login

Start the DSH web interface:

npx @deepseek-ai/dsh web

Navigate to:

Settings > OpenAI OAuth > Sign in with ChatGPT

After completing authorization on the OpenAI page, the models available in your account will appear in DSH’s standard model selector.

Headless Login

If using the headless profile, execute from the terminal:

npx @deepseek-ai/dsh plugin --profile headless exec dsh-codex-login

Login information is saved separately in:

~/.deepseek-harness/codex

Credentials are held by Codex and refreshed as needed.

Selecting Models

You can select the provider and model via the DSH interface or write the configuration directly.

Edit ~/.dsh/settings.yaml with an example like this:

agent-default-model:
  provider: openai-codex
  model: gpt-5.6-sol
  reasoningEffort: high

After configuration, run DSH as usual. For example, in headless mode:

npx @deepseek-ai/dsh --profile headless "inspect this repository"

The key point here is that the plugin reads the model list from the currently logged-in Codex account instead of maintaining a hardcoded model version list within the plugin.

Uninstallation

To remove the plugin but keep the ChatGPT login for easy reinstallation later, run:

npx -y dsh-openai-oauth uninstall

To completely clean up, also log out and delete:

~/.deepseek-harness/codex

Run:

npx -y dsh-openai-oauth uninstall --purge-auth

Note that npm may still retain its normal download cache.

Use Cases and Considerations

This plugin is suitable for the following scenarios:

  • You are already using DeepSeek Harness.
  • You have a usable ChatGPT account with Codex access.
  • You want DSH to access models via the Codex app-server instead of managing a separate OpenAI API key.
  • You want to select models uniformly across the web profile, headless profile, or existing custom profiles.

Before use, note the following:

  • This is an independent community plugin, not officially endorsed by DeepSeek or OpenAI.
  • The plugin runs with the permissions of the current dsh process. It is recommended to check the source code, license, and dependency boundaries before installation.
  • The login state is written to ~/.deepseek-harness/codex; do not mistake it for a general OpenAI API key store.
  • It does not copy auth.json from other Codex installations, implement its own OAuth client, or call undocumented endpoints.
  • The environment must meet the version requirements for Node.js and DeepSeek Harness; otherwise, installation or operation may not behave as expected.

Links

  • GitHub: https://github.com/DGPisces/dsh-openai-oauth