前言¶
DeepSeek Harness(DSH)的插件體系裏,模型 provider 可以作爲一個獨立組件接入。對已經在用 DSH 的開發者來說,常見的麻煩是:外部模型的登錄態、憑據存儲、token 刷新,以及模型列表從哪裏來。
dsh-openai-oauth 做的事情比較具體:它把 DSH 的 LLM interface 接到官方本地 Codex app-server,由 Codex 負責 ChatGPT 登錄、憑據存儲、token 刷新和模型訪問。你不需要單獨準備 OpenAI API key,也不需要在 DSH 裏維護一份固定的 GPT 版本列表。
下面介紹這個插件的定位、安裝方式、典型用法,以及需要留意的運行邊界。
這是什麼¶
dsh-openai-oauth 是一個 DeepSeek Harness LLM provider 插件,使用 managed ChatGPT OAuth 接入 Codex 模型。
- 包名:
dsh-openai-oauth - 維護者:
DGPisces - 許可證:
MIT - GitHub:
https://github.com/DGPisces/dsh-openai-oauth
它被描述爲獨立社區插件,不是 DeepSeek 或 OpenAI 官方產品。DSH 的理念是“一切皆插件”,但這個插件本身應作爲社區組件看待,不應理解成官方應用商店裏的官方應用。
核心功能¶
這個插件提供的能力集中在“登錄、憑據、模型訪問、DSH 接入”這幾件事上。
- 使用 ChatGPT 賬號中的模型,作爲 DeepSeek Harness 的主模型。
- 將 DSH 的 LLM interface 連接到官方本地 Codex app-server,由 Codex 處理:
- ChatGPT 登錄
- 憑據存儲
- token 刷新
- 模型訪問
- 不需要 OpenAI API key。
- 安裝時會註冊到
web和headlessprofiles,也會註冊到已經存在的自定義 profiles。 - 可以在 DSH 界面選擇 provider 和 model,也可以寫入
~/.dsh/settings.yaml。 - 模型列表從當前登錄的 Codex 賬號讀取,不在插件裏維護一份硬編碼的 GPT 版本列表。
- 支持卸載;也支持可選的認證清理。
文檔明確說明,這個包不會:
- 複製另一個 Codex 安裝裏的
auth.json - 自己實現一套 OAuth client
- 調用未公開的 ChatGPT endpoint
運行要求¶
安裝前建議先確認環境滿足以下要求。
- Node.js:
22.19或更高 - DeepSeek Harness:developer preview
0.1.0-rc.6 - ChatGPT 賬號:具備 Codex access
package.json 中以下 peer dependencies 被標記爲 optional:
@deepseek-ai/cordis:^4.0.1@deepseek-ai/dsh-host-webserver:>=0.1.0-rc.5@deepseek-ai/dsh-llm:>=0.1.0-rc.5react:^18.2.0
安裝與啓用¶
先執行安裝命令:
npx -y dsh-openai-oauth install
這個命令會把包註冊到 DSH 的 web profile、headless profile,以及已經存在的自定義 profile。
如果你之後新建了自定義 profile,可以重新執行一次安裝命令,讓它註冊到新 profile。
登錄 ChatGPT¶
Web 界面登錄¶
啓動 DSH 的 Web 界面:
npx @deepseek-ai/dsh web
進入:
Settings > OpenAI OAuth > Sign in with ChatGPT
在 OpenAI 頁面完成授權後,你的賬號可用的模型會出現在 DSH 正常的模型選擇器裏。
Headless 登錄¶
如果使用的是 headless profile,可以從終端執行:
npx @deepseek-ai/dsh plugin --profile headless exec dsh-codex-login
登錄信息會單獨保存在:
~/.deepseek-harness/codex
憑據由 Codex 持有,並在需要時刷新。
選擇模型¶
你可以在 DSH 界面裏選擇 provider 和 model,也可以直接寫配置。
編輯 ~/.dsh/settings.yaml,示例如下:
agent-default-model:
provider: openai-codex
model: gpt-5.6-sol
reasoningEffort: high
配置完成後,按常規方式運行 DSH。例如 headless 方式:
npx @deepseek-ai/dsh --profile headless "inspect this repository"
這裏的關鍵是:插件會從當前登錄的 Codex 賬號讀取模型列表,而不是在插件內部維護一份寫死的模型版本列表。
卸載¶
如果只是移除插件,但保留 ChatGPT 登錄,方便後續重裝,執行:
npx -y dsh-openai-oauth uninstall
如果要徹底清理,同時註銷並刪除:
~/.deepseek-harness/codex
執行:
npx -y dsh-openai-oauth uninstall --purge-auth
需要注意,npm 可能仍會保留它正常的下載緩存。
適用場景與注意¶
這個插件適合以下情況:
- 你已經在用 DeepSeek Harness。
- 你有可用的 ChatGPT 賬號,並且具備 Codex access。
- 你希望 DSH 通過 Codex app-server 訪問模型,而不是自己額外管理一套 OpenAI API key。
- 你希望在 web profile、headless profile 或已有自定義 profile 中統一選擇模型。
使用前要注意幾點:
- 這是一個獨立社區插件,未獲得 DeepSeek 或 OpenAI 官方背書。
- 插件以當前
dsh進程權限運行。安裝前建議檢查源碼、許可證和依賴邊界。 - 登錄態會寫入
~/.deepseek-harness/codex,不要把它誤認爲是通用 OpenAI API key 存儲。 - 它不復制其他 Codex 安裝裏的
auth.json,也不自己實現 OAuth client,不調用未公開 endpoint。 - 環境必須滿足 Node.js 和 DeepSeek Harness 的版本要求,否則安裝或運行可能不符合預期。
鏈接¶
- GitHub:
https://github.com/DGPisces/dsh-openai-oauth