DSH Plugins

August 25, 2026 · View on GitHub

Personal plugins for DeepSeek Harness, maintained outside the generated ~/.dsh profile.

dsh-subscription-auth

Adds a polished Settings → Subscriptions / 订阅 page for OAuth-backed providers served by @deepseek-ai/dsh-llm-pi-ai.

Features

  • Lists OAuth subscription providers without mixing in API-key or ambient-credential providers.
  • Supports Codex through a ChatGPT subscription.
  • Supports Grok through SuperGrok or X Premium.
  • Also surfaces other OAuth flows registered by pi-ai, including Claude, GitHub Copilot, Kimi For Coding, and OpenRouter.
  • Shows connected, disconnected, and expired credential states.
  • Runs device-code and browser-callback authorization directly inside DSH Settings.
  • Supports login, re-login, cancellation, prompt answers, and logout.
  • Resumes an in-flight authorization flow after a page refresh.
  • Never sends OAuth token bytes to the browser UI.

Architecture

Provider subscription
        ↓ OAuth
pi-ai provider authorization flow

@deepseek-ai/dsh-llm-pi-ai
        ↓ ctx.authorization + ctx.credentials
dsh-subscription-auth
        ↓ Host RPC
Settings → 订阅

The plugin is a GUI and authorization bridge, not a provider implementation. Model requests, OAuth refresh, model catalogs, and provider protocols remain owned by pi-ai and dsh-llm-pi-ai.

Repository layout

packages/
└── dsh-subscription-auth/
    ├── lib/
    │   ├── index.js   # Host Cordis plugin and RPC channel
    │   └── client.js  # Settings page client bundle
    ├── package.json
    └── README.md

Local installation

Clone this repository:

git clone https://github.com/ievenight/dsh-plugin.git ~/Documents/dsh-plugin
cd ~/Documents/dsh-plugin
pnpm install
pnpm check

Add the package to ~/.dsh/profiles/web/package.json:

{
  "dependencies": {
    "dsh-subscription-auth": "link:/Users/YOUR_NAME/Documents/dsh-plugin/packages/dsh-subscription-auth"
  }
}

Mount the authorization service and plugin in ~/.dsh/profiles/web/cordis.patch.yml:

- insert:
    - id: authorization
      name: '@deepseek-ai/dsh-authorization'

- insert:
    - id: subscription-auth
      name: 'dsh-subscription-auth'

Install the profile dependency and restart DSH:

cd ~/.dsh/profiles/web
pnpm install
dsh web

OAuth-capable provider routes such as openai-codex and xai should be configured under llm-pi-ai.providers in ~/.dsh/settings.yaml or through Settings → Models.

Security

OAuth grants are stored by the Harness credential service in ~/.dsh/.credentials.yaml. This repository contains no credentials. The browser receives only non-secret status metadata, authorization notices, verification URLs, and device codes.

Development

pnpm check

After changing package metadata or Host composition, restart dsh web. Refresh the browser after client-bundle changes when client HMR is unavailable.