syncended/deepseek-harness-openai-codex
项目介绍Project Overview
这是 DSH 的 OpenAI Codex 插件,把 ChatGPT Plus/Pro 订阅用作 LLM 提供方。它通过 Web 设置或 /codex 命令完成设备码 OAuth 登录,自动注册路由、刷新令牌,并在模型选择器中提供 Codex 模型及限额弹窗。适合想用订阅额度在 DSH 中调用 Codex、且无需本地回调服务时使用。注意:限额接口为 OpenAI 未公开端点,返回结构可能变化。
This DSH plugin lets a ChatGPT Plus/Pro subscription serve as an LLM provider through OpenAI Codex. It adds device-code OAuth login in the Web settings UI or via /codex, registers the Codex route, refreshes tokens automatically, exposes Codex models in the selector, and shows usage limits. Use it when you want Codex access in DSH without a localhost callback server. Caveat: the limits view relies on OpenAI’s undocumented Codex usage endpoint, which may change.
请帮我了解并安装插件:【deepseek-harness-openai-codex】【https://github.com/syncended/deepseek-harness-openai-codex】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add @syncended/dsh-codex
把 syncended/deepseek-harness-openai-codex 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
DeepSeek Harness — OpenAI Codex Plugin
Use your ChatGPT Plus/Pro subscription as an LLM provider in the DeepSeek Harness.
This plugin adds device-code OAuth login through both the Web settings UI
and /codex CLI command — no browser callback server or localhost listener.
After login, Codex models appear alongside your other providers in the DSH
model selector, the access token refreshes automatically without a restart,
and a Codex limits popup above Settings shows the 5-hour and weekly balance.
How it works
- In the Web app, open Settings → OpenAI Codex → Sign in. The page opens
OpenAI, shows the one-time code, and updates automatically after approval.
Headless/TUI users can run
/codex loginfor the same device-code flow. - The plugin stores the token triple
{access, refresh, expires}in$DSH_HOME/openai-codex.jsonand publishes only the liveaccesstoken to the DSH credential seam underOPENAI_CODEX_TOKEN. - Your
settings.yamlmaps that credential to theopenai-codexroute, anddsh-llm-pi-aiuses the built-inopenai-codex-responsesAPI to serve all Codex models. - The plugin refreshes the token automatically ~5 minutes before expiry.
- In Web, Codex limits calls OpenAI from the server and returns only normalized usage percentages, reset times, and optional credit balances; OAuth tokens never cross into the browser.
The limits view uses OpenAI's undocumented Codex usage endpoint, so its response shape may change without notice.
Install
# Add the plugin to your profile (web, tui, headless, …)
dsh plugin --profile web add @syncended/dsh-codex
# Restart dsh
Note: the profile is a pnpm workspace root, so on some
dshversions theaddcommand needs-w:dsh plugin --profile web add -w @syncended/dsh-codex.
The plugin registers the openai-codex route defaults automatically, so no
dsh settings set is needed. In Web, use Settings → OpenAI Codex. The
/codex login | status | logout commands remain available in every profile.
Like DSH's other credential settings, Web login is restricted to a loopback
Web session. For a remote deployment, run /codex login on the host-facing
profile instead.
Commands
| Command | Description |
|---|---|
/codex login |
Start device-code OAuth login |
/codex status |
Show token status and expiry |
/codex logout |
Clear the stored token |
Configuration
The plugin accepts these optional config values (rarely needed):
| Key | Default | Description |
|---|---|---|
clientId |
app_EMoamEEZ…hrann |
OpenAI OAuth client id |
credentialRef |
OPENAI_CODEX_TOKEN |
Credential seam ref |
deviceCodeTimeoutSeconds |
900 (15 min) |
How long the user has to approve |
refreshWindowMs |
300_000 (5 min) |
Refresh this far before expiry |
tokenFile |
$DSH_HOME/openai-codex.json |
Override token persistence path |
Requirements
- ChatGPT Plus or Pro subscription
- DeepSeek Harness ≥ 0.1.0-rc.6
- Node.js ≥ 18
License
MIT — see LICENSE.
nexu-io/open-design
freestylefly/awesome-gpt-image-2
anywhere-labs/dsh-desktop
walkinglabs/learn-harness-engineering
awesome-dsh-plugin/awesome-dsh-plugin
MemTensor/MemOS