seriousz158/dsh-codex-use

Project Overview项目介绍

This is a native plugin built exclusively for DeepSeek Harness (DSH) that integrates the local Codex CLI App Server as a manually selectable LLM provider into DSH. It adds the provider entry "OpenAI Codex (ChatGPT)" with ID codex-chatgpt that communicates with Codex via JSON-RPC over stdio. It follows DSH's official plugin packaging standards and can be installed directly via the DSH plugin CLI. The plugin does not open a local HTTP port, does not fake an OpenAI-compatible API, and does not change DSH's default LLM provider; the original DeepSeek provider remains active unless the user explicitly selects Codex for a session.

This plugin is designed for developers who use both DSH and Codex CLI, and want to access Codex models directly within their DSH workflow. After installation, you just restart DSH, then select the Codex provider from the model/provider selector to start a new session with Codex. All tool operations like command execution and file changes are handled natively by the Codex App Server, so the plugin does not duplicate tool call execution. It supports DSH's native features like streaming message display, request cancellation, and token usage tracking for Codex sessions.

This plugin is open-source under the MIT license, so it is free to use, modify, and distribute. It requires Node.js 22 or newer, and only works with specified versions of DSH and Codex CLI 0.149.0; any other Codex CLI version will fail to start due to protocol mismatch. The plugin never reads or copies Codex's local authentication file, because all login status is managed natively by Codex CLI itself. OAuth functionality is implemented in a separate independent package, so it is not included in the current plugin distribution at all.

这是一个专为 DeepSeek Harness (DSH) 开发的原生插件,作用是将用户本地安装的 Codex CLI 的 App Server 接入 DSH,让用户可以在 DSH 会话中手动选择 OpenAI Codex 作为 LLM 提供商。插件不监听本地 HTTP 端口,也不会修改 DSH 的默认提供商,未选择 Codex 时仍会使用原有的 DeepSeek 服务,符合 DSH 的插件打包规范。

该插件面向同时使用 DSH 和 Codex CLI 的开发者,完成安装重启 DSH 后,用户即可在模型/提供商选择器中手动选中 Codex。Codex 侧的命令执行、文件变更等工具调用都由 Codex App Server 原生处理,插件不会重复执行操作,同时可以复用 DSH 原有的流式消息展示、请求取消和用量统计展示功能。

本插件采用 MIT 许可证开源免费使用,依赖 Node.js 22 或更高版本,仅兼容指定版本范围的 DSH 和 Codex CLI 0.149.0,其他版本会因协议不匹配启动失败。插件不会读取或复制 Codex 的认证文件,登录态由 Codex CLI 原生管理,OAuth 功能独立实现,不包含在当前包中。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 2 warnings2 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
  • No DSH plugin manifest detected - it may only carry the dsh-plugin topic, so the install method must be confirmed on the spot未检测到 DSH 插件清单:可能只是打了 dsh-plugin 话题,安装方式要现场确认
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:seriousz158/dsh-codex-use#path:/packages/dsh-codex-appserver

把 seriousz158/dsh-codex-use 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-codex-use

把本机 Codex CLI 的 App Server 接入 DeepSeek Harness(DSH),作为一个可手动选择的 LLM provider:

  • provider id:codex-chatgpt
  • 显示名:OpenAI Codex(ChatGPT)
  • 传输:codex app-server --stdio(JSON-RPC)
  • 不监听本地 HTTP 端口,也不伪装成 OpenAI-compatible API
  • DSH 的默认 provider 不会被修改;用户选择前仍使用原来的 DeepSeek provider

当前仓库发布的是 source/GitHub 版本,不是 npm 发布包。0.2.5 的协议 schema 固定于 Codex CLI 0.149.0,通过 --experimental 生成;升级 Codex CLI 后应先 重新生成并审查 schema。

标准安装(推荐)

插件市场和 DSH 官方插件 CLI 使用同一条 Bundle 安装路径。对 GitHub source 版本,直接 把 monorepo 中的可安装子包作为 profile 插件加入:

dsh plugin --profile web add github:seriousz158/dsh-codex-use#path:/packages/dsh-codex-appserver

该命令会把 dsh-codex-appserver 加入 profile 的 dsh.profile.bundles,并自动读取子包 中的 cordis.patch.yml。如果 profile 曾经通过旧安装器安装过本插件,请先按“旧版手工 安装迁移”处理共享 patch,避免同一个 loader 被挂载两次。

功能边界

  • DSH 会话可以选择 Codex 模型,并复用 DSH 的流式消息、取消和 usage 展示。
  • Codex 会话内的命令、文件变更和其它工具由 Codex App Server 自己执行;插件不会把同一批活动翻译成 DSH tool-call 再执行一次。
  • 默认使用 workspace-write sandbox、approvalPolicy: never、临时线程(ephemeralThreads: true)。
  • 默认不注入 DSH 长期记忆;在 Codex 0.149.0 协议下显式设置 injectMemory: true 会 fail-closed 为 protocol-error,不会读取或发送记忆,也不会提升为 developerInstructions。
  • 额度行只展示 Codex 官方 account/rateLimits/read 数据;读取失败时明确显示不可用,不估算额度。
  • 插件不会读取或复制 ~/.codex/auth.json,登录态由 Codex CLI 管理。
  • 不做静默降级或自动切换到 DeepSeek。
  • Fast Mode 仅在 model/list 声明 serviceTiers.priority 时发送 turn/start.serviceTier。
  • 本地图片只接受 DSH attachment;远程 URL、任意路径和图片生成默认关闭。
  • packages/dsh-codex-search 是独立且默认关闭的 codex-search Bundle,带 SSRF/DNS/MIME/大小边界。
  • OAuth 不在本插件实现,保持独立的 dsh-codex-oauth 路线。

兼容性

组件 版本/要求
Node.js >=22
DSH `>=0.1.0-rc.7 <0.1.1-0
Codex CLI 0.149.0
运行环境 macOS + zsh(安装脚本)

0.2.5 只支持 Codex CLI 0.149.0。其它版本(包括历史 0.144.1)会 fail-closed 为 protocol-mismatch,不会继续启动请求。0.144.1 只用于历史 fixture 回放,不宣称同一构建双版本运行时兼容。

协议刷新(要求 /opt/homebrew/bin/codex --version 为 0.149.0)可重复执行:

npm run refresh:protocol

刷新工具会使用 codex app-server generate-json-schema --experimental 和 generate-ts --experimental,校验 lib/protocol.js 的 schema 映射并输出文件清单 及 v2 schema SHA-256。

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-llm-subscription 下一个 Next dsh-plugin →