dsh-openai-codex
by devteapot
harness LLM 缝的 ChatGPT Plus/Pro OAuth 适配器:一个插件实例独占 openai-codex provider 路由,OAuth 会话存于凭据引用
ChatGPT Plus/Pro OAuth adapter for the harness LLM seam. One plugin instance owns the openai-codex provider route, stores the OAuth session under a credential reference, and…
安装
dsh plugin --profile web add github:devteapot/dsh-openai-codexGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
English | 中文
面向 harness LLM seam 的 ChatGPT Plus/Pro OAuth 适配器。一个插件实例拥有 openai-codex 提供方路由,把 OAuth 会话存在一条凭据引用下,并通过 pi-ai 的 Codex catalog 提供方发流。登录、刷新与登出留在本包,以便 @deepseek-ai/dsh-llm-pi-ai 继续只处理密钥加端点的 profile。
包根入口导出 Cordis 插件约定、OpenAiCodexAdapter、OpenAiCodexAuth(ctx.openaiCodex)、createCodexModels 以及 OAuth 存储辅助函数。本包内部自带 pi-ai 历史与事件转换,因此从 Git 安装时不依赖尚未发布的 harness 导出。
安装
此开发版本要求 DeepSeek Harness 0.1.0-rc.6 或更高版本。
把固定到特定提交的版本安装进 profile:
dsh plugin --profile web add github:devteapot/dsh-openai-codex#<commit>
构建产物已提交,因此按 Git 哈希安装时不会运行包构建。Harness 与 pi-ai 包作为 peer 通过 profile 的安装级 fallback 解析,所以 profile 不会再安装一套提供方 SDK 依赖树。本包声明了 dsh.bundle,所以 dsh plugin add 会在 profile 清单中跟踪它并应用 cordis.patch.yml。可用 dsh plugin --profile web remove @devteapot/dsh-openai-codex 删除。
配置
- id: llm-openai-codex
name: '@devteapot/dsh-openai-codex'
config:
oauthEnv: OPENAI_CODEX_OAUTH # default; resolved per request via ctx.credentials, then the environment
displayName: OpenAI Codex # optional selector label
reasoning: high # optional; off | minimal | low | medium | high | xhigh | max
streamIdleTimeoutMs: 300000 # optional; five-minute default
retryPolicy: # optional; omission uses bounded normal defaults
mode: normal
maxRetries: 3
在被引用的凭据写入一份 JSON OAuth 会话(type、access、refresh、expires)之前,该路由保持休眠。/codex-login 与 ctx.openaiCodex.login(interaction) 会持久化该会话;/codex-logout 与 ctx.openaiCodex.logout() 会删除它。pi-ai 在下一次请求时于存储锁下刷新即将过期的 token。未登录时发出的请求以 NO_ADAPTER 失败,因为路由尚未注册;MISSING_CREDENTIAL 留给无法持久化会话的登录(没有凭据服务)。
oauthEnv 是凭据引用。settings 文档从不保存 token。未挂载凭据服务时,适配器仍读取该环境变量,但登录无法写入新会话。
/codex-login 运行 pi-ai 的 ChatGPT 流程(http://localhost:1455/auth/callback 上的浏览器回调,或设备码)。提示走 ctx.userQuestions;浏览器登录会在该提示中显示授权 URL,授权 URL 或设备码也会写入宿主日志。回调 URL 本身不是登录链接。没有 userQuestions 的无头组合应自行实现 AuthInteraction 并调用 ctx.openaiCodex.login(),或把紧凑 JSON 会话写入该凭据引用。
GenerateOptions.provider 必须是 openai-codex。GenerateOptions.model 是 ctx.llm.listModels('openai-codex') 中的 catalog 模型 id。GenerateOptions.stop 以 UNSUPPORTED_OPTION 拒绝。
动态配置
插件用同一套 Config schema 注册 llm-openai-codex settings 命名空间。重试策略或显示名变更会就地重新注册已激活的路由。凭据变更(oauthEnv 上的 credentials/updated)会在不重启的情况下激活或撤回该路由。
错误
NO_ADAPTER — 路由处于休眠,或请求点名了其他提供方。UNKNOWN_MODEL — 模型 id 不在已安装的 Codex catalog 中。UNSUPPORTED_REASONING_EFFORT / UNSUPPORTED_OPTION / UNSUPPORTED_CONTENT — 请求要求了该模型或适配器不提供的能力。TIMEOUT / ABORTED — 空闲超时或调用方取消。INVALID_CREDENTIAL — 已存储文档不是可用的 OAuth 会话。MISSING_CREDENTIAL — 登录没有地方持久化会话。
模型体验
经 pi-ai 发出的提供方请求
模型看到的内容
所选 Codex catalog 模型会收到 GenerateOptions.system、历史、工具,以及 pi-ai 通用流式 API 支持的采样字段。本包不添加任何提示散文。
Token 影响
精确输入由提供方分词决定。转换不添加模型可见文本。
KV Cache 影响
转换保持逻辑请求顺序且不添加文本。更换适配器实例、提供方、模型或任何上游请求 token,都可能从第一处差异起阻止复用。传入 GenerateOptions.sessionId 时,除非 pi-ai 内部关闭了 cache retention,Codex 路径可以复用会话缓存。
提供方响应
模型看到的内容
pi-ai 事件变为 harness 的 reasoning、text、tool-call、usage 与 finish 分片。工具参数以原始 JSON 字符串存储。
Token 影响
生成内容仅在循环记录之后影响后续输入。pi-ai 把推理 token 折入 output usage。
KV Cache 影响
已记录的响应内容追加到下一请求,不会使较早可复用前缀失效。
已知限制与暂缓事项
- Models 页面没有登录按钮 —
ui-settings-models只编辑 API 密钥卡片。登录入口是/codex-login或ctx.openaiCodex.login()。专用设置卡片暂缓。 - 登录提示需要
ctx.userQuestions— 没有该服务的组合无法完成/codex-login;请自行提供AuthInteraction,或直接写入会话 JSON。 - 授权 URL 记在宿主日志里 — 浏览器回调监听的是 harness 进程,因此远程 Web 客户端应使用设备码登录,或在同一台机器上运行该命令。
- 不导入
~/.codex/auth.json— 不读取官方 Codex CLI 会话。请通过本插件粘贴或登录。 - 已配置的
llm-pi-aiopenai-codexprofile 会与本插件冲突 — 安装本 bundle 前,请从llm-pi-ai:节删除该键。本插件独占该路由。
原始 README: https://github.com/devteapot/dsh-openai-codex/blob/main/README.zh.md ↗
同类插件
查看全部 →
dsh-anchored-standard
两阶段 DeepSeek Harness 预设:先 Minimal 对齐的 bootstrap,再切完整 Standard 工具(Project2 98/99)

PicGo-Core
极致的图片上传引擎,CLI 与 API 双支持

awesome-deepseek-harness
DeepSeek Harness(DSH)及其优秀社区插件的精选指南。

awesome-deepseek-harness
DeepSeek Harness (DSH)生态系统:来自dsh-external/hub和公共dsh-plugin主题的精选插件、工具和基础设施。

AI-Novel-Writer
本地优先 AI 小说创作工作台,提供 Windows/macOS 桌面版与 DeepSeek Harness 插件开发预览,支持角色、大纲、章节蓝图、审稿修稿和本地模型。

mcp-for-stata
MCP-for-Stata:把 Stata 集成进你的 agent