前言¶
在 DeepSeek Harness(DSH)里接 OpenAI Codex,常见做法是单独配 API Key、再分别处理搜索和图片工具。如果你本机已经用官方 Codex CLI 完成 ChatGPT 登录,登录态写在 ~/.codex/auth.json(或 $CODEX_HOME/auth.json),另一套凭证管理就显得重复。
下面介绍社区插件 dsh-codex-auth(维护者 suntianc)。它把 Codex CLI 的登录态接到 DSH 的 openai-codex 路由,并补上网页搜索、图片生成,以及原生的 GPT Auth 设置分区。插件归类为「客户端」,当前 npm 版本为 v0.3.0。
这是什么¶
dsh-codex-auth 是一个自包含的 DSH Codex 能力包。一句话概括:复用本地 Codex CLI 的 ChatGPT 登录,为 DSH 提供 LLM 路由、全局搜索提供方、图片工具,以及带登录与能力卡片的 GPT Auth 设置界面。
它不是 DeepSeek 或幻方官方出品;社区目录 SkillHub 是独立站点,与上游无官方从属关系。GitHub 仓库 suntianc/dsh-codex-auth 截至撰写时约 13 stars、4 forks。
核心功能¶
共享 Codex 登录态¶
LLM、搜索、图片共用一个仅运行于 Host 的认证协调器。凭证从版本绑定的 auth.json 快照解析,配合短时内存缓存与到期前主动刷新;进程内合并并发刷新,OAuth 网络 I/O 前后使用短跨进程锁。
可在 GPT Auth 卡片中启动官方 codex login(浏览器或设备码流程),也可事先在终端执行 codex login。设置页展示连接状态,以及尽力获取的周剩余额度与重置时间。插件自有的 /codex-auth Connection RPC 仅允许 loopback,不向浏览器发送 token 值。
openai-codex LLM 路由¶
注册 openai-codex 提供方,模型选择器中显示为 OpenAI Codex (chatgpt)(可通过 Host 配置 displayName 修改)。默认流式传输为 sse;也支持 websocket 与 auto。
GPT Auth 设置提供默认关闭的 1M 上下文开关,可将 gpt-5.6-luna、gpt-5.6-sol、gpt-5.6-terra 向 DSH 报告的上下文窗口从 272,000 Token 提升到 1,000,000 Token,供 DSH 计算 Token 压力与压缩时机。超过 272K 的请求可能更快消耗账户配额,且不会展开已压缩的历史。
网页搜索¶
通过 codex-search Host 行向 @deepseek-ai/dsh-web 注册 ID 为 codex 的搜索提供方,并作为部署全局 Search Provider 接入 DSH 内置 web_search 工具。每次搜索请求官方端点:
https://chatgpt.com/backend-api/codex/alpha/search
若调用方是 openai-codex Agent,搜索使用该 Agent 的当前模型;否则使用设置中的备用模型(默认 gpt-5.4)。网络错误与 HTTP 5xx 最多重试五次(指数退避);HTTP 429 立即返回。
默认可调项包括:启用(true)、模式(live)、上下文大小(medium)、备用模型、最大输出 Token(2048)。
图片创作¶
generate_image 对模型呈现为单一操作,按有无参考图分发到:
POST https://chatgpt.com/backend-api/codex/images/generations
POST https://chatgpt.com/backend-api/codex/images/edits
支持必填 prompt、最多五个参考图、1–10 张输出,以及尺寸/质量/背景等选项。参考图须明确来源,例如:
{ "kind": "session", "handle": "image:<attachmentId>" }
{ "kind": "workspace", "path": "assets/reference.png" }
生成结果经校验后通过 ctx.attachments.saveImage(...) 持久保存,在 DSH 标准图片画廊中展示。list_images 供模型在上下文压缩后查阅会话中的持久图片,默认分页 5 张、最多 10 张。
图片工具仅注册到声明支持图片输入的 openai-codex Agent;本地识别为 Free 套餐时标记为不可用。
环境要求¶
安装前确认以下条件:
- DeepSeek Harness
0.1.1-rc.1或兼容的后续0.1.x版本。 - Node.js
^22.19.0或>=24.0.0。 codexCLI 已加入PATH。- 已执行
codex login,或准备在 GPT Auth 卡片中登录。
若 Codex 将凭证仅存于系统钥匙串、auth.json 无可用 token,可在 ~/.codex/config.toml 设置 cli_auth_credentials_store = "file" 后重新登录。
安装与启用¶
推荐从 npm 安装。包内已含预构建的 Host 与浏览器 bundle,不需要安装期构建权限:
dsh plugin --profile web add dsh-codex-auth
安装完成后重启 dsh web,打开设置并选择 GPT Auth。
升级到当前版本时,先停止正在运行的 dsh web,再执行:
dsh plugin --profile web add dsh-codex-auth@0.3.0
dsh plugin --profile web list
列表显示 dsh-codex-auth@0.3.0 后,重新启动 dsh web 并刷新浏览器。
其他安装方式(预构建 Release tarball、GitHub 源码、本地 pack)见仓库 README;从 GitHub 源码安装时,pnpm 10+ 可能要求将 allowBuilds 键写入 ~/.dsh/profiles/web/pnpm-workspace.yaml,仅在审查并信任源码后授权。
典型用法¶
1. 登录与检查状态¶
- 安装插件并重启
dsh web。 - 进入设置 → GPT Auth。
- 若未登录,在登录卡片启动
codex login;或提前在终端执行:
codex login
- 卡片会显示连接状态与周用量信息(尽力获取)。
2. 使用 openai-codex 模型¶
在 DSH 模型选择器中选择 OpenAI Codex (chatgpt) 下的模型(如 gpt-5.6-luna)。需要更长上下文时,在 GPT Auth 的 LLM 上下文卡片开启 1M 上下文开关。
3. 启用搜索与图片¶
网页搜索与图片创作默认启用。可在 GPT Auth 对应卡片中调整模式、备用模型、图片尺寸等;详细项可收起为紧凑行。Agent 使用 openai-codex 且支持图片输入时,generate_image 与 list_images 自动可用。
Host 配置(可选)¶
能力包 patch 按依赖顺序启用三条 Host 行:
| 行 | Export | 作用 |
|---|---|---|
llm-codex-auth |
dsh-codex-auth |
共享认证协调器与 LLM 路由 |
codex-search |
dsh-codex-auth/search |
全局搜索提供方 |
codex-image |
dsh-codex-auth/image |
Agent scope 图片工具 |
不要在 llm-pi-ai.providers 下重复添加 openai-codex,也不要与 dsh-codex 同时安装;重复路由所有权会被明确拒绝。仅需搜索/图片、不需要 LLM 路由时,可设 llmEnabled: false 保留共享登录协调器。
适用场景与注意¶
适合谁: 本机已用 Codex CLI 登录 ChatGPT、希望在 DSH Web Profile 里统一使用 openai-codex 模型、网页搜索和图片能力的个人开发者。
务必注意:
- 插件走私有、受账户权限控制的
chatgpt.com/backend-api,属非官方通道,可随时撤销、限流或变更,README 明确标注「仅限个人开发」,勿用于生产任务。 - DSH 插件以当前
dsh进程权限运行;安装前应检查源码与许可证(仓库见 GitHub)。 - Token 值不进入浏览器、设置、日志或工具 metadata;仅 Host 侧请求携带认证 header。
- 不要与
dsh-codex或手写openai-codexprovider 配置叠加,以免路由冲突。
结尾¶
dsh-codex-auth 把 Codex CLI 已有的 ChatGPT 登录态接到 DSH,一次安装即可覆盖 LLM、搜索、图片与 GPT Auth 设置,减少重复配凭证。若你正在 DSH 生态里探索 Codex 接入,可从社区目录或 GitHub 查看详情:
- 目录页:https://www.skillhub.cn/plugins/suntianc/dsh-codex-auth
- GitHub:https://github.com/suntianc/dsh-codex-auth