🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

Codex 外援咨询 Xantares330/dsh-codex-consult

DeepSeek Harness
Xantares33010 天前有提交已提供中文文档扫描:含敏感能力

随时向 Codex 请教审查意见并核验模型与额度

30.6/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Xantares330/dsh-codex-consult
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · model
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 10 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件
查看扫描证据(共 39 处,展示前 22 条)
  • 写入本地文件
    lib/core.mjs:64
    mkdirSync(dir, { recursive: true })
  • 写入本地文件
    lib/core.mjs:70
    writeFileSync(temp, `${JSON.stringify(value, null, 2)}\n`, 'utf8')
  • 写入本地文件
    lib/core.mjs:71
    renameSync(temp, file)
  • 读取本地文件
    lib/core.mjs:85
    if (!existsSync(requested)) throw new Error(`codex_not_found: ${requested}`)
  • 读取本地文件
    lib/core.mjs:92
    if (existsSync(base)) {
  • 读取本地文件
    lib/core.mjs:93
    const entries = readdirSync(base, { withFileTypes: true })
  • 读取本地文件
    lib/core.mjs:96
    .filter((file) => existsSync(file))
  • 读取本地文件
    lib/core.mjs:97
    .sort((a, b) => statSync(b).mtimeMs - statSync(a).mtimeMs)
  • 执行外部命令固定命令
    lib/core.mjs:101
    const found = spawnSync('which', ['codex'], { encoding: 'utf8' })
  • 读取本地文件
    lib/core.mjs:105
    if (existsSync(file)) return file
  • 写入本地文件
    lib/core.mjs:345
    appendFileSync(join(stateDir, 'calls-index.jsonl'), `${JSON.stringify(record)}\n`, 'utf8')
  • 删除本地文件递归
    lib/core.mjs:374
    rmSync(dir, { recursive: true, force: true })
  • 执行外部命令固定命令
    lib/runner.mjs:109
    spawnSync('taskkill.exe', ['/PID', String(child.pid), '/T', '/F'], { windowsHide: true })
  • 写入本地文件
    lib/runner.mjs:131
    writeFileSync(promptFile, promptText, 'utf8')
  • 执行外部命令来自配置/变量
    lib/runner.mjs:178
    result.codexVersion = spawnSync(result.codexPath, ['--version'], { encoding: 'utf8', windowsHide: true })
  • 写入本地文件
    lib/runner.mjs:278
    const stdout = createWriteStream(attempt.log)
  • 写入本地文件
    lib/runner.mjs:279
    const stderr = createWriteStream(attempt.stderr)
  • 执行外部命令来自配置/变量
    lib/runner.mjs:291
    const child = spawn(result.codexPath, args, {
  • 读取本地文件
    lib/runner.mjs:352
    const text = existsSync(attempt.finalFile) ? readFileSync(attempt.finalFile, 'utf8').trim() : ''
  • 读取本地文件
    lib/runner.mjs:352
    const text = existsSync(attempt.finalFile) ? readFileSync(attempt.finalFile, 'utf8').trim() : ''
  • 写入本地文件
    lib/runner.mjs:385
    writeFileSync(finalFile, `${text}\n`, 'utf8')
  • 写入本地文件
    lib/runner.mjs:415
    writeFileSync(finalFile, result.finalText ? `${result.finalText}\n` : '', 'utf8')
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

在 DeepSeek Harness 里按需调用 OpenAI Codex 命令行:只读评审、行内证据、可验证的模型来源、配额防护和持久调用日志。

README

由 DeepSeek 最新模型翻译生成
dsh-codex-consult 把 OpenAI Codex CLI 接进 DeepSeek Harness,做一个随时可用的「外部顾问」。 插件给每个 DSH agent 提供三个工具: | 工具 | 作用 | | codex_consult | 让 Codex 做规划 / 审查 / 疑难诊断:证据内联、服务端真实模型档位可验证、调用前后额度快照、全程落盘可追溯。 | | codex_quota | 读取 Codex 最新额度快照(5 小时窗口 + 每周窗口),不产生任何 API 调用。 | | codex_calls | 查看最近的 Codex 调用记录:状态、模型、耗时、是否验证、标签。 | 目标是低门槛、可审计的第二意见:DSH 在做架构取舍、把报告/结论发给用户前、卡在疑难问题超过 30–60 分钟、或需要判定验收是否达标时,可以随时咨询另一个模型家族——并且有证据能证明「到底是哪个模型回答的」。 为什么需要这个插件 单一模型家族可能自信地犯错。咨询另一个模型很便宜,但朴素集成有三个坑,这个插件都处理了: 1. 请求说用一个模型,实际被悄悄降级(容量不足、额度限制、provider 回退)。 插件读取 Codex 的 rollout 文件,校验实际服务的模型与推理档位;不一致直接判失败。 2. 长审查流被中途掐断。在代理后面,长流式响应容易被重置。
展开完整文档(README 剩余 1 节)
dsh-codex-consult

把 OpenAI Codex CLI 接进 DeepSeek Harness,做一个随时可用的「外部顾问」。

插件给每个 DSH agent 提供三个工具:

| 工具 | 作用 |
| codex_consult | 让 Codex 做规划 / 审查 / 疑难诊断:证据内联、服务端真实模型档位可验证、调用前后额度快照、全程落盘可追溯。 |
| codex_quota | 读取 Codex 最新额度快照(5 小时窗口 + 每周窗口),不产生任何 API 调用。 |
| codex_calls | 查看最近的 Codex 调用记录:状态、模型、耗时、是否验证、标签。 |

目标是低门槛、可审计的第二意见:DSH 在做架构取舍、把报告/结论发给用户前、卡在疑难问题超过 30–60 分钟、或需要判定验收是否达标时,可以随时咨询另一个模型家族——并且有证据能证明「到底是哪个模型回答的」。

为什么需要这个插件

单一模型家族可能自信地犯错。咨询另一个模型很便宜,但朴素集成有三个坑,这个插件都处理了:

1. 请求说用一个模型,实际被悄悄降级(容量不足、额度限制、provider 回退)。
插件读取 Codex 的 rollout 文件,校验实际服务的模型与推理档位;不一致直接判失败。
2. 长审查流被中途掐断。在代理后面,长流式响应容易被重置。transport: "https" 会抬高 stream idle 上限,并在同一 thread 内自动 codex exec resume 重试,重发完整 prompt——答案不会是残片拼接。
3. 没人知道花了多少额度。每次调用前后从 Codex 自己的遥测里快照额度,写入持久索引;超过阈值可配置为「警告」或「拒绝调用」。

环境要求

- DeepSeek Harness,需要 tools 能力(在 0.2.0-rc.、@deepseek-ai/dsh-tools >= 0.1.5-rc.2 上测试)。
- Codex CLI 已安装并登录(codex --version 可用、codex login 完成)。
插件自动探测最新安装,不读取 auth.json。
- Node.js 22+(DSH 自带运行时,无需额外安装)。

安装

A. 装进某个 DSH profile(本地包)

1) 让 profile 能解析到包 $profile = "$env:USERPROFILE\.dsh\profiles\desktop" New-Item -ItemType Junction -Path "$profile\node_modules\dsh-codex-consult" -Target "D:\path\to\dsh-codex-consult"

2) 挂载:在 profile 的 cordis.patch.yml 末尾追加

- insert:
- id: codex-consult
name: dsh-codex-consult

重启 DSH(或重新加载 profile)后,该 profile 的所有会话都会出现三个工具。

通过 bundle 方式挂载的包自带 cordis.patch.yml(见 cordis.patch.yml),不需要手动写 insert;手动挂载只用于「直接从 profile 的 node_modules 加载」的场景。

B. 作为 bundle 分发(推荐给别人用)

在 profile 的 package.json 里加依赖,并把包名加进 bundle 列表:

{
"dependencies": { "dsh-codex-consult": "^0.1.0" },
"dsh": {
"profile": {
"bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-codex-consult"]
}
}
}

C. 从 npm 安装(发布后)

dsh plugin --profile desktop add dsh-codex-consult

配置

配置写在插件节点(codex-consult)的 config 里,例如 profile patch:

- id: codex-consult
config:
codexPath: "" # 空 = 自动探测 codexHome: "" # 空 = ~/.codex stateDir: "" # 空 = $DSH_HOME/codex-calls model: gpt-6-astra effort: high transport: https # 代理环境下推荐 sandbox: read-only timeoutSec: 900 maxAttempts: 3 loadUserConfig: false requireModelVerification: true proxyUrl: http://127.0.0.1:7897 keepCalls: 100 quota: enabled: true warnOnly: true primaryMaxPercent: 90 weeklyMaxPercent: 85

| 选项 | 默认值 | 说明 |
| model / effort | gpt-6-astra / high | 可在工具参数里逐次覆盖。 |
| transport | native | https 会在代理环境下启用稳定的长流 provider(dsh-https)。 |
| sandbox | read-only | Codex 不需要写权限:证据是内联进 prompt 的。 |
| requireModelVerification | true | 仅当 Codex 不写 rollout 日志时才建议关闭。 |
| proxyUrl | "" | 只对 Codex 子进程生效;空 = 继承环境变量。 |
| quota.warnOnly | true | 设为 false 时,超额度会拒绝调用。 |

使用

任何 DSH agent 都可以直接调用。典型话术:

审查 papers/phystwin/docs/06-report.md 和 research/.../render_metrics_20261021.txt 里的证据,结论是否站得住?用 codex_consult 并传 evidenceFiles。

发送前用 codex_consult 审一下我的最终答复。

工具返回内容除完整答案外,还包含:

- model / effort —— 请求值;modelVerified —— 从 rollout 证明的真实值;
- elapsedSec、finalChars、token usage;
- quotaBefore / quotaAfter(如 5h 3% · weekly 22%);
- callDir / resultFile —— 本次调用的持久记录。

验证与额度是怎么做的

- 模型验证:调用结束后,按 thread id 找到本次精确的 rollout 文件(~/.codex/sessions/YYYY/MM/DD/rollout-<thread>.jsonl),读取最后一条 turn_context 事件,对比 model / effort。不一致则本次调用判定失败。
这些信息来自 Codex 自己的元数据,插件不会打开 auth.json。
- 额度快照:Codex 会在 token_count 事件里记录 rate_limits;插件只读最近 rollout 的尾部,不产生任何 API 调用,所以 codex_quota 零成本。
调用前护栏可「警告」或「拒绝」,调用后记录额度变化。

安全

- 默认 read-only 沙箱;非交互调用固定 approval_policy="never",不会卡在审批上。
- 证据会内联进 prompt;prompt 与答案文件保存在调用目录,可能含敏感项目数据,请像对待你附上的文件一样对待它们。
- 插件只会启动用户配置或系统安装的 Codex 可执行文件。

故障排查

| 现象 | 处理 |
| codex_not_found | 配置 codexPath 或 CODEX_CLI_PATH。 |
| proxy_unavailable | 启动代理 / 修正 proxyUrl / 去掉该配置。 |
| effective_model_or_effort_unverified | Codex 降级或替换了模型:检查额度,或确认本机 Codex 会写 rollout 日志。 |
| usage_limit / capacity | 等窗口重置、降低 model/effort,先用 codex_quota 看看。 |
| 长调用约 2 分钟被断 | 用 transport: https(会抬高 stream idle 超时)。 |
| Codex 配置报错 | loadUserConfig: false 保持调用干净;需要用户 MCP/配置时才开。 |

开发

node test/unit.mjs # 纯函数测试,无网络
node test/e2e.mjs # 假 DSH ctx + 一次真实 Codex 调用(需要登录+网络)

目录结构:

lib/core.mjs 路径解析、rollout 溯源、额度、prompt 组装、调用索引 lib/runner.mjs Codex CLI 调用引擎(重试/resume/遥测) lib/index.mjs DSH 插件入口:配置 schema + 三个工具 test/ 单测 + e2e examples/ AGENTS.md 片段、profile patch 示例

版本历史见 CHANGELOG.md。

License

MIT
预览分享卡片长什么样 ↓Xantares330/dsh-codex-consult
分享 · DeepSeek Harness Hub
Xantares330/dsh-codex-consult

随时向 Codex 请教审查意见并核验模型与额度

回到顶部