Bundle
dsh-codex-provider
OpenAI Codex provider for DeepSeek Harness with device-code OAuth, Codex CLI import, token refresh, and a web settings panel.
- Source
- Hu9956
- stars
- 9 stars
- License
- MIT
- Updated
- Updated 7 days ago
Readme
# dsh-codex-provider DeepSeek Harness (DSH) 供应商插件:**OpenAI Codex(ChatGPT Plus/Pro 订阅)** 的设备码 OAuth 登录、令牌自动刷新与供应商管理。 在 DSH 设置中新增 **“供应商”** 分区,通过设备码授权登录 OpenAI 账号后,即可在模型选择器中使用 DSH 内置的 `openai-codex` 模型(`gpt-5.4`、`gpt-5.5`、`gpt-5.6-*` 等),消费你的 **ChatGPT Plus / Pro 订阅额度**。 ## ✨ 功能 - **设备码 OAuth 登录**:在界面点击“使用 OpenAI 账号登录”,按提示完成设备码授权,无需 API Key - **导入 Codex CLI 登录态**:直接复用本机 `~/.codex/auth.json` 中已有的登录(无需重新授权) - **令牌自动刷新**:后台定期检查 access token,过期前自动用 refresh token 轮换(refresh_token 也会一并轮换) - **供应商管理界面**:设置 → 供应商,展示登录状态、账号、套餐(Plus/Pro)、令牌过期时间,支持退出登录 - **激活内置 Codex 模型**:登录后 `openai-codex` 路由自动激活,模型选择器直接可选 <img width="1590" height="776" alt="ScreenShot_2026-08-14_020002_683_副本" src="https://github.com/user-attachments/assets/4c2d8b0e-edb8-46a8-876d-f297f0ec8f54" /> <img width="1892" height="1020" alt="ScreenShot_2026-08-14_043716_413" src="https://github.com/user-attachments/assets/09abd005-4432-4eb9-b9fc-6acab9772361" /> ## 📦 安装 ```bash dsh plugin --profile web add dsh-codex-provider ``` 插件包自带 DSH bundle 配置,安装时会自动加入 profile,无需手动编辑 `cordis.patch.yml`。 重启 dsh web 服务(Ctrl+C 后重新运行启动命令),刷新页面即可在 **设置 → 供应商** 看到入口。 也可以从 GitHub 安装当前源码版本: ```bash dsh plugin --profile web add github:Hu9956/dsh-codex-provider ``` ## 🚀 使用 1. 打开 **设置 → 供应商** 2. 点击 **“使用 OpenAI 账号登录”**,按页面提示完成设备码授权 3. 登录成功后,在模型选择器中选择 Codex 模型(如 `gpt-5.4`)开始使用 ### 设备码授权注意事项(页面也会显示) 1. **登录前**:请先在 **ChatGPT 网页端 → 设置 → 账户安全与登录** 中打开“为 Codex 启用设备代码授权”开关(未开启将无法授权); 2. **授权**:先复制页面显示的设备代码,再点击“使用 OpenAI 账号登录”,按提示填入该设备代码; 3. **登录后**:建议返回 ChatGPT 网页端关闭该开关——不影响本次登录,但下次重新登录前需重新开启。 ## ⚙️ 工作原理 - 设备码 OAuth 流程直接对接 `auth.openai.com`,令牌直连 `chatgpt.com/backend-api`(与官方 Codex CLI 相同的通道与认证方式) - access token / refresh token 存入 DSH 凭证库(`OPENAI_CODEX_API_KEY` / `OPENAI_CODEX_REFRESH_TOKEN`);仅 Host 侧在请求和刷新时解析,绝不返回浏览器 - 凭证引用写入 `llm-pi-ai.providers.openai-codex.apiKeyEnv`,激活 DSH 内置的 `openai-codex` 路由(`routeAuth` 会在 OAuth 旁附加 harness apiKey 通道) - 后台任务每分钟检查 access token 过期时间,剩余不足 10 分钟时自动刷新并轮换;同机多实例通过刷新锁串行处理 ## ⚠️ 注意事项 - **与 Codex CLI 共享同一 OAuth 会话**:任一侧刷新令牌后,另一侧持有的旧 refresh token 可能失效(届时在 Codex CLI 侧重新 `codex login` 即可) - **不需要 API Key**:本插件消费的是 ChatGPT 订阅额度,不是 OpenAI API 计费 - 需要 DSH `>= 0.1.0-rc.6` - 可用模型由当前 DSH 版本和 OpenAI 账户权限决定 ## 🔒 安全与隐私 - access token 与 refresh token 只写入 DSH 凭证库;浏览器端只接收脱敏账号信息和登录状态 - 请勿在 Issue、Discussion、日志或截图中公开设备代码、OAuth token、`~/.dsh/.credentials.yaml` 或 `~/.codex/auth.json` 的内容 - 安全问题请按 [SECURITY.md](SECURITY.md) 通过 GitHub 私下报告 ## 兼容性 当前版本针对 `@deepseek-ai/dsh 0.1.0-rc.6` 和 Node.js 22 验证。DSH 尚处于 RC 阶段,后续版本若调整插件接口,本插件也可能需要同步升级。 ## 🛠️ 开发 | 文件 | 说明 | |---|---| | `lib/index.js` | host 插件:设备码 OAuth、凭证存取、令牌刷新、Typert Remote 服务(`codexProvider`) | | `lib/client.js` | client 插件:设置页“供应商”分区 UI(ModuleLoader bundle 格式) | ## 📄 License [MIT](LICENSE) ## 免责声明 这是社区维护的非官方插件,与 OpenAI、DeepSeek 或 DeepSeek Harness 官方没有隶属或背书关系。OpenAI、ChatGPT、Codex 和 DeepSeek 等名称与商标归各自权利人所有。
Install
dsh plugin --profile web add github:Hu9956/dsh-codex-provider
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-codex-provider from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.