前言¶
在 DeepSeek Harness(DSH)里跑智能体时,复杂推理往往要借助外部模型或 CLI。若本机已安装并登录 OpenAI Codex CLI,配额分布在 5 小时与周度两个 ChatGPT 计划窗口里,手动查额度、选模型、再执行 codex exec,既打断 agent 流程,也容易在额度紧张时误用高档模型。
下面介绍社区插件 dsh-codex-bridge(维护者 AK-blank,分类:模型推理):在 DSH 宿主侧读取本地 Codex 配额,并按策略把任务非交互地委托给 codex exec。插件为 unofficial 社区作品,与 OpenAI、Codex、DeepSeek 无隶属或背书关系。
这是什么¶
dsh-codex-bridge 是一个仅运行在 DSH 宿主侧的 bundle:提供两个工具,无浏览器半端、无构建步骤、无 npm 依赖。它通过 Codex CLI 的 codex app-server 读取额度与模型阶梯,仅在调用委托工具时消耗模型用量。
| 工具 | 作用 | 是否消耗 Codex 用量 |
|---|---|---|
codex_status |
读取 5 小时/周度窗口、重置时间、额度、模型阶梯及配额感知推荐 | 否 |
codex_delegate |
在指定目录执行一次非交互 codex exec,返回答案、token 用量、thread id 及剩余配额 |
是 |
codex_status 使用 account/rateLimits/read 与 model/list;真正花配额的路径只有 codex_delegate。
配额与模型策略¶
部署默认策略刻意收窄,避免在额度见底时仍用高档模型:
- 常态:默认
gpt-6.1-sol,推理力度high。 - 储备:任一窗口剩余 ≤10% 时,自动切换到
gpt-5.6-sol、medium。 gpt-6-astra:不会自动选用;调用方必须显式传model: "gpt-6-astra"且allow_expensive_model: true,因其更快消耗共享配额。- 下限:模型不低于
gpt-5.6-sol,推理力度不低于medium。 - 阻断:已用达 95%,或后端禁止普通使用时,除非
allow_low_quota: true,否则拒绝执行。
在 model=auto、reasoning_effort=auto 时,按任务复杂度(simple / standard / hard / critical)推荐:常态窗口均为 gpt-6.1-sol / high;储备态为 gpt-5.6-sol,其中 critical 为 high,其余为 medium。若调用方显式指定模型或力度,会校验而非静默降级;拒绝时会说明可选模型或缺少的 opt-in。
说明:已安装的 Codex CLI 可能在 model/list 中不列出 gpt-6.1-sol,但后端仍可能接受;codex_status 会将其标为 configured 并提示 codex exec 可能出现缺少模型元数据的警告。账户模型 id 不同时,可在配置中改 defaultModel / minModel。
安装与启用¶
环境要求:DSH 0.2.0-rc.2(README 记载的测试版本)、Node.js 20+、已登录的 Codex CLI(codex login)。
在 DSH Web GUI 的 Plugins 中,可添加包目录或通过插件管理器安装 bundle:
{ "action": "install_bundle", "target": "/path/to/dsh-codex-bridge" }
从 GitHub 安装(仓库已发布时):
dsh plugin --profile web add github:AK-blank/dsh-codex-bridge#v1.1.1
本地目录安装并确认配置是否生效:
dsh plugin --profile web add /path/to/dsh-codex-bridge
dsh --profile web --dump-config | grep -A2 codex-bridge
若宿主进程已缓存旧模块,需重启 dsh web。新 bundle 行可热生效,但修改 lib/*.js 后需重启进程。
可在 profile 的 cordis.patch.yml 中覆盖插件行,例如:
- id: codex-bridge
name: dsh-codex-bridge
config:
minModel: gpt-5.6-sol
defaultModel: gpt-6.1-sol
expensiveModel: gpt-6-astra
minEffort: medium
defaultEffort: high
reservePercent: 10
stopPercent: 95
statusCacheSeconds: 30
defaultSandbox: read-only
ephemeral: true
maxTimeoutSeconds: 1800
maxOutputChars: 16000
codexCommand: codex
codexHome: ''
常用项含义:reservePercent / stopPercent 对应 10% 储备切换与 95% 阻断;defaultSandbox 默认 read-only;ephemeral: true 表示不把每次委托持久化到 ~/.codex/sessions;maxTimeoutSeconds 单次委托墙钟上限 1800 秒;maxOutputChars 返还给 agent 的答案字符上限 16000。
典型用法¶
对 agent 的自然语言示例(README 原文意图):
Check the Codex quota, then delegate this hard problem to Codex with the right model and effort.
流程上:先 codex_status,再按复杂度或显式 model / reasoning_effort 调用 codex_delegate。任务描述必须自包含——Codex 看不到 DSH 对话,需写明绝对路径、现象、约束与交付物。
默认沙箱为只读。仅当需要改文件时,再传 sandbox: "workspace-write" 与合适的 cwd。
仓库自带自检,可在插件目录执行:
node selftest.mjs # 离线:契约、策略、渲染、注册
node selftest.mjs --live # 读取真实配额与模型阶梯(不消耗模型)
node selftest.mjs --live-exec # 跑一次极小 codex exec(会消耗少量用量)
适用场景与注意¶
适合:已在本机使用 ChatGPT 计划绑定的 Codex CLI,希望在 DSH agent 内统一查配额、按窗口余量选模型,并把难任务外包给 codex exec 的开发者。
务必注意:
- 插件在 当前 dsh 宿主进程权限 下运行;安装前应阅读源码与 MIT 许可证,自行评估信任边界。
- Codex 与 DSH 会话不共享上下文;委托内容要写全。
read-only下 Codex 可读cwd不可写;workspace-write仍受 Codex 自身沙箱与网络策略约束。- 返回的配额是百分比快照,不是精确 token 预留;分层策略是花费护栏。
- Codex CLI 升级可能导致 app-server 方法不兼容,报错为
CODEX_RPC/CODEX_PROTOCOL,而非伪造数据。
DSH 生态强调「一切皆插件」;社区目录站点与 DeepSeek / 幻方无官方从属关系,本文介绍的是独立社区条目,并非官方应用商店上架产品。
结尾¶
dsh-codex-bridge 把「读配额 → 选模型与推理力度 → 单次 codex exec」收成两个宿主工具,默认偏保守,并在低配额与贵模型上要求显式 opt-in。当前 package 版本为 1.1.1。