dsh-openai-auth
Manifest validOpenAI / Codex ChatGPT subscription auth for DeepSeek Harness Desktop, with native account and quota UI.
OpenAI / Codex Auth for DeepSeek Harness Desktop
在 DeepSeek Harness 桌面版连接本机 Codex 的 ChatGPT 登录,使用同一账号的 Codex 订阅额度,并在原生设置页管理账号、授权和额度。
原生 Harness bundle + 后端 provider + 客户端设置页 · MIT · 无安装脚本 · 无需 OpenAI Platform API key
这是独立社区插件,与 DeepSeek 或 OpenAI 的官方插件无关联。插件不增加额度,也不改变 OpenAI 的账号权限或限速规则。
截图展示
以下为 Harness 桌面端实际界面,账号邮箱已隐藏,背景工作区已收起。
账号与订阅额度

原生模型选择器

模型自动同步

停用连接

功能
| 功能 | 使用方式 |
|---|---|
| 复用已有登录 | 识别当前用户本机 Codex 的 ChatGPT 登录缓存 |
| 浏览器登录 | 点击登录,进入官方 Codex 启动的 ChatGPT 浏览器授权流程 |
| 自动续期 | token 即将过期时,由官方 Codex CLI 负责更新缓存 |
| 手动刷新 | 页面中的「刷新授权」立即请求官方续期 |
| 查看额度 | 显示官方返回的各额度窗口、剩余比例和重置时间 |
| 秒开额度 | 打开页面先显示上次读取的额度,再在后台刷新 |
| 管理连接 | 启用或停用 Harness 中的 Codex 连接,并保存选择 |
| 隐藏账号 | 录屏、演示或截图前隐藏邮箱 |
| 自动同步模型 | 启动时及默认每 6 小时读取官方 Codex 目录;设置页可手动刷新 |
| GPT-6.1 Sol | 补齐旧版 Harness 目录缺少的模型入口;支持 low / medium / high / xhigh / max |
| 原生对话能力 | 复用 Harness adapter 的流式输出、工具调用、历史 replay 和图片处理 |
| 系统代理 | macOS 上按当前系统 HTTP/HTTPS 代理运行,不修改系统设置 |
兼容性与前提
- 已验证:macOS + DeepSeek Harness Desktop
0.2.0-rc.2+ Codex CLI0.154.0。 - 设置页顺序:账号连接 → 订阅额度 → 模型自动同步;
showModelSync: false可隐藏最后一张卡片。 - 插件当前绑定 Harness
0.2.0-rc.2的接口版本;其他 Harness 版本尚未验证。 - 需要本机安装官方 Codex CLI,并有可用的 ChatGPT / Codex 账号。
- 当前支持 file 存储的 Codex ChatGPT 登录,即
CODEX_HOME/auth.json或默认的~/.codex/auth.json。 - Keychain-only 存储、Windows 和 Linux 桌面环境尚未验证;macOS PAC / SOCKS-only 系统代理暂不支持。
- 额度和模型权限由 OpenAI 管理,模型出现在选择器中不代表该账号一定有调用权限。
安装到桌面版
-
安装官方 Codex CLI。在终端运行
codex login status,确认使用 ChatGPT 登录;没有登录时可先运行codex login,也可安装后从插件界面登录。 -
在 Harness 左侧打开「插件」→「添加插件」。
-
输入以下 GitHub 包地址,或从 Releases 下载
.tgz后填写其绝对路径:github:solstice621/dsh-openai-auth#v0.3.2 -
安装并启用插件,然后完全退出并重新打开 Harness。
-
打开左下角「更多」→「设置」→ OpenAI / Codex,确认账号已连接。
-
在会话模型选择器中选择 OpenAI · Codex 额度 下的模型,例如 GPT-6.1 Sol。
本仓库提供可直接运行的 JavaScript 和原生 client entry,不需要执行 prepare、postinstall 或第三方安装脚本,也不需要修改 App 安装包或 asar。
若桌面启动时显示 DeepSeek 欢迎页,可选择「添加 API Key」→「稍后配置」进入,再使用 Codex 模型。
授权界面操作
使用已有账号
页面显示邮箱、ChatGPT 订阅类型、当前连接状态和授权有效期。已在 Codex 登录的账号会自动识别,无需复制 token。
登录与切换账号
点击「登录 ChatGPT」或「重新登录 ChatGPT」,浏览器会打开官方登录页面。插件页显示等待状态,提供再次打开页面和取消本次登录的按钮;完成后自动更新。等待十分钟后会取消本次尝试。
登录与本机 Codex 共用。重新登录会切换本机 Codex 的账号。 取消本次登录不会主动执行全局退出。
刷新授权
点击「刷新授权」,插件通过官方 codex app-server 请求续期,再重新读取缓存。成功后页面更新有效期。实际推理请求也会在 token 距离过期不足五分钟时自动续期。
查看额度
打开页面时,插件先显示上次成功读取的额度快照,同时通过官方 codex app-server 在后台刷新;刷新完成后数字自动替换。这样启动 Codex 的几秒钟里页面不是空的。
也可点击「刷新额度」手动读取。页面优先使用官方返回的多额度桶数据,显示每个可用窗口的剩余百分比和重置时间。缺失窗口显示不可用,网络失败会显示错误,未知数据不会被当成零。
显示缓存时,时间行标注为「上次更新」;刷新失败会保留原有数字并在下方给出原因,而不是把额度清空。缓存按账号隔离:~/.dsh/cache/dsh-openai-auth/<CODEX_HOME 哈希>/quota.json 只保存限速窗口本身,不含 token、账号 id 或任何 provider 文本,切换账号后不会复用上一个账号的快照(可用 quotaCachePath 改位置)。
DSH 运行且连接启用时,后端默认每 5 分钟自动刷新额度,即使没有打开设置页也会保存成功快照;可用 quotaRefreshMinutes 调整(1–1440 分钟)。启动时已有新鲜快照会避免重复请求;后台与手动读取并发时共用一次官方 RPC。设置页每 30 秒读取本地快照来显示后台更新,不额外触发额度网络请求。失败保留上次快照,停用或退出 DSH 时停止刷新。
退出不会清除已保存的连接开关、Codex 登录、模型目录和上次额度快照;重启后按当前账号恢复,再继续定时更新。等待浏览器登录等临时流程、正在执行的请求、隐藏邮箱等页面临时状态不会恢复。额度快照与本机 Codex 共享账号;页面时间是最近一次成功读取时间,不是实时余额。
停用与启用
「停用此连接」只阻止该 Harness provider 发起新的推理请求,并保存选择;不会退出 Codex、删除缓存或取消已有请求。点击「启用此连接」恢复使用。
自动同步模型
插件在启动时通过官方 codex app-server 的 model/list 读取模型目录,默认每 6 小时刷新;每分钟检查一次账号变化,切换账号后重新同步。设置页的「模型自动同步」卡片显示模型数量、目录来源、最近成功时间,提供「刷新模型」按钮。停用连接时自动同步暂停。
目录更新会通知 Harness 的原生模型选择器,无需重启;保留现有模型和当前选择,正在运行的请求继续使用准备请求时的模型描述。网络或读取失败时保留本账号最近成功的目录,重启后也可从本地缓存恢复。缓存只保存经过筛选的模型字段、账号标识的 SHA-256 和成功时间,不保存 token、邮箱或原始 RPC 数据。
model/list 可能使用 Codex 的内置或缓存目录,因此新模型出现速度仍取决于模型发现所使用的官方 Codex 版本及账号。默认使用 codexCommand;也可以将 modelDiscoveryCommand 指向本机另一份更新的官方 Codex 可执行文件。插件不会自动下载或运行新代码。目录更新适用于现有 Codex Responses 协议;协议变化仍需要升级插件。
只展示当前 Harness 支持的 text/image 输入及 off、minimal、low、medium、high、xhigh、max 推理选项;例如客户端目录返回的 ultra 需要自动任务委派,当前插件不提供该等级。未知新模型若没有限额数据,使用 16,384 上下文、4,096 输出的保守本地预算,价格未知按零估计;这些不是服务端容量或价格承诺。已有模型继续保留 Harness 的限额和兼容性元数据。
配置
桌面进程的 PATH 可能找不到 Codex。用 command -v codex 查询可执行文件,然后在桌面 profile 的 cordis.patch.yml 配置插件:
- id: dsh-openai-auth
name: dsh-openai-auth
config:
codexCommand: /absolute/path/to/codex
# 可选;默认 CODEX_HOME 或 ~/.codex
# codexHome: /absolute/path/to/.codex
# useSystemProxy: true
# refreshSkewSeconds: 300
# modelRefreshMinutes: 360
# modelDiscoveryCommand: /absolute/path/to/current/official/codex
# modelCachePath: /absolute/path/to/models.json
| 字段 | 默认值 | 说明 |
|---|---|---|
enabled | true | 可在界面实时修改并保存 |
codexCommand | codex | 官方 Codex CLI 的命令或绝对路径 |
codexHome | CODEX_HOME 或 ~/.codex | 登录缓存所在目录 |
refreshSkewSeconds | 300 | 提前续期窗口,范围 0–3600 秒 |
modelRefreshMinutes | 360 | 自动目录刷新周期,范围 5–10080 分钟 |
quotaRefreshMinutes | 5 | 后端额度刷新周期,范围 1–1440 分钟;关闭设置页仍运行 |
modelDiscoveryCommand | codexCommand | 模型发现所用官方 Codex,可配置较新的本机版本 |
modelCachePath | ~/.dsh/cache/dsh-openai-auth/<home-hash>/models.json | 经过筛选的模型元数据缓存;按 Codex 目录分开、按账号校验 |
useSystemProxy | macOS 为 true | 没有 Harness 显式代理时,沿用当前系统静态 HTTP/HTTPS 代理 |
除连接开关外,修改配置后请重启 Harness。
凭据、权限与网络
- 插件读取当前用户指定目录中的 Codex 登录缓存,校验 ChatGPT 登录类型、账号一致性和 token 有效期。
- 插件不把 access/id/refresh token 写入 Harness 设置或浏览器存储;UI 只接收允许展示的账号字段、状态与额度。
- 登录和续期由官方 Codex CLI 负责写入 Codex 缓存;插件不自行实现 refresh token 轮换。
- 后端会启动所配置的 Codex 可执行文件,使用 app-server 的账号 RPC。请只配置自己信任的官方 CLI 路径。
- 对话内容按正常模型调用发送给 OpenAI。账号、登录和额度请求通过官方 Codex;插件没有自己的统计或中转服务。
- 模型缓存以本地私有权限写入
~/.dsh/cache/dsh-openai-auth/,只记录模型元数据和不可逆账号摘要;切换账号不会加载另一账号的目录。 - 页面操作经过 Harness 原生
/api认证边界,卸载插件时撤销其路由和后台资源。 - macOS 读取当前系统代理时会调用系统自带的
scutil。如果 Harness 已有显式代理,优先沿用该配置。 - 使用系统代理时,代理设置变化会阻止后续请求并提示重启,不会自动修改操作系统代理或启动 VPN。
apiKey 是底层 pi-ai 的通用 bearer-token 传递接口;本插件传入的是 Codex OAuth access token,不接受 OpenAI Platform API key,也不会回退到 API 按量计费。
常见问题
显示未登录或无法读取缓存:确认 Codex 使用 ChatGPT 登录。Keychain-only 用户若希望使用本插件,可自行运行 codex -c cli_auth_credentials_store='file' login;插件不会自动修改凭据存储偏好。
无法启动 Codex:配置 codexCommand 为真实绝对路径,再重启 Harness。
网络超时或代理已切换:检查当前网络与代理是否可达,重启 Harness,再刷新授权。不要把仅在特定网络可用的代理永久启用。
模型调用被拒绝:检查账号权限、额度和限速,尝试该账号可用的模型。目录以 Harness 捆绑版本为主;0.3.0 为旧目录补充 GPT-6.1 Sol,上游已有该模型时优先采用上游元数据。模型目录并非账号权限证明。
为什么已有会话没自动换模型:插件不会重写旧会话;请在会话模型选择器中切换。
如何卸载:先选择其他 provider,再在 Harness「插件」页停用或卸载本插件。Codex 自己的登录保持由 Codex 管理。
验证与开发
npm test
npm pack --ignore-scripts
本地测试覆盖模型目录补齐、上游元数据优先、推理等级、自动同步周期、分页、缓存恢复、账号切换、停止后的资源清理、缓存读取、续期并发、取消、错误脱敏、账号一致性、额度归一化、额度快照缓存与账号隔离、登录通知、连接状态及代理变更,并验证后台额度周期、手动/后台并发去重、跨重启快照、停用/卸载的晚到响应以及设置页的缓存轮询与身份隔离。原生 runtime 另外验证了路由撤销、官方登录启动与取消、真实续期、额度查询、工具调用和桌面推理。浏览器重新登录最后一步需要账号持有人完成;本项目未用自动化替用户更换账号。
已验证模型包括 GPT-6.1 Sol 的原生流式请求、工具调用与历史回放,GPT-6 Sol 的桌面请求,以及 GPT-5.6 Sol 的工具调用与历史回放。GPT-6.1 Sol 暂沿用当前 Harness 原生 Codex 路由的 272,000 token 上下文预算;API 文档中的更大上下文未在此订阅路由验证。其他列出模型的可用性仍以各账号实际调用为准。
English overview
A native bundle and settings plugin for DeepSeek Harness Desktop. It reuses the local official Codex ChatGPT login and subscription usage, adds browser sign-in, managed token refresh, quota windows, a persistent connection toggle, and automatic model discovery with a manual refresh control. Credentials stay managed by Codex; display-safe data only reaches the UI. The current tested target is macOS, Harness Desktop 0.2.0-rc.2, Codex CLI 0.154.0 for account operations, and Desktop-bundled official Codex 0.162.0-alpha.2 for model discovery. File-based login storage is required. This independent community plugin is not an official OpenAI or DeepSeek product.
依据与许可
Comments
Loading…
Similar plugins
by DGPisces
DeepSeek Harness provider for GPT models using managed ChatGPT OAuth through Codex app-server
★ 5
↓ 167/wk
MIT
JavaScript
Aug 15, 2026
dsh plugin --profile web add dsh-openai-oauthby AdonisSheldon
Use ChatGPT OAuth and OpenAI Codex models in DeepSeek Harness—no API key or Codex CLI required.
★ 9
↓ 196/wk
MIT
TypeScript
Aug 20, 2026
dsh plugin --profile web add dsh-openai-oauthby Yan-Zero
Use your ChatGPT subscription in DeepSeek Harness through OpenAI's Codex sign-in flow
★ 77
Apache-2.0
TypeScript
Sep 29, 2026
dsh plugin --profile web add dsh-codexby callqh
Sign in to OpenAI Codex from DeepSeek Harness with a ChatGPT Plus/Pro subscription, by driving the authorization flow llm-pi-ai already registers.
★ 0
MIT
JavaScript
Sep 30, 2026
dsh plugin --profile web add dsh-codex-oauthby imMamdouhaboammar
Use ChatGPT and Codex subscriptions in DeepSeek Harness with OAuth, quota runway forecast, safe resets, web search, image generation, and Fast mode.
★ 1
↓ 278/wk
MIT
JavaScript
Sep 7, 2026
dsh plugin --profile web add dsh-codex-subscription-enby birat-chapagain
DeepSeek Harness plugin: use your OpenAI Codex (ChatGPT Plus/Pro) subscription through OAuth
★ 7
↓ 81/wk
MIT
TypeScript
Aug 23, 2026
dsh plugin --profile web add dsh-codex-oauth