ziyou979/dsh-llm-oauth

DeepSeek Harness plugin: OAuth / subscription-plan LLM providers (Grok, GitHub Copilot, OpenAI Codex, Anthropi

dsh-llm-oauth is a standalone OAuth/subscription-plan LLM plugin for DeepSeek Harness: it reuses the same catalog package as the official pi-ai integration (@earendil-works/pi-ai) but constructs Models with a durable CredentialStore so subscription tokens refresh on the request path. It adds a Settings → OAuth / Subscriptions page with per-provider enable/disable/sign-in/sign-out actions, badges for signed-in state, device codes with copy, and authorization URLs. Enabling a provider registers the LLM route and it appears alongside API-key providers under Settings → Models. The ChatGPT/Codex route uses device-code authorization (enable it in ChatGPT Settings → Apps & connectors first) and carries an account-ban risk for unofficial-client OAuth.

Coding & Development ★ 6 updated 2026-09-15 — untested
View on GitHub ↗

Install

dsh plugin --profile web add github:ziyou979/dsh-llm-oauth

GitHub source install per README (no npm package documented): dsh plugin --profile web add github:ziyou979/dsh-llm-oauth, or from a local checkout dsh plugin --profile web add ./dsh-llm-oauth. Confirm with dsh --profile web --dump-config. A git install may ask you to allow prepare in the profile's pnpm-workspace.yaml (pnpm ≥10 refuses lifecycle scripts otherwise): allowBuilds: dsh-llm-oauth: true. Reuses the official @earendil-works/pi-ai catalog package with a durable CredentialStore so subscription tokens refresh on the request path.

Compatibility

DeepSeek Harness, install into your own profile with dsh plugin add (does not patch the Harness repo). Official dsh-llm-pi-ai authenticates with API keys only; this plugin adds OAuth/subscription sign-in. Providers: Grok (SuperGrok / X Premium), GitHub Copilot (optional Enterprise URL, defaults to public github.com), ChatGPT / Codex plan (needs device-code authorization enabled in ChatGPT; account-ban risk), Anthropic subscription, OpenRouter, Kimi For Coding. Model ids come from the installed pi-ai catalog. After install the plugin is dormant (providers: {}) so the model picker is not flooded.

Details

Recent updates

The current English README documents: the difference from official dsh-llm-pi-ai, packaging (dsh.bundle.patch + optional dsh.client, cordis.patch.yml row, prepare bundles src → lib on git install), the provider table, enable vs sign-in semantics, install, the Settings UI, the host HTTP API (status/enable/disable/login/logout), the ChatGPT device-code prerequisite, and the account-ban risk warning.

FAQ

Which subscription plans does it support?
Grok (SuperGrok / X Premium), GitHub Copilot, ChatGPT / Codex plan, Anthropic subscription, OpenRouter, and Kimi For Coding. Model ids come from the installed @earendil-works/pi-ai catalog.
Is it safe to sign in to ChatGPT/Codex?
The README warns that signing in to Codex/ChatGPT this way (device code or any unofficial client OAuth) can get the ChatGPT account restricted or banned — OpenAI treats it as using the subscription outside official apps. Use a disposable account if you test it.
Why don't I see hundreds of models after installing?
The plugin is dormant until you enable a provider (providers: {}). Enable a provider from Settings → OAuth / Subscriptions or /oauth enable <provider>; only enabled providers list models.

Alternatives

suntianc/dsh-codex-auth · stardustlc666/dsh-codex-port · Yan-Zero/dsh-codex

More plugins in Coding & Development

Browse more in Coding & Development

Guides for Coding & Development plugins