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
webandheadlessprofiles 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.jsonfrom 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.19or 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.5react:^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
dshprocess. 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.jsonfrom 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