dshbase

Plugin directory / Developer / dsh-web-auth-gateway

dsh-web-auth-gateway

Unverified luodeb

✓ Actively maintained 2 contributors Builds on 3 official DSH packages

View on GitHub ↗ ← Back to plugin directory

3Stars
1Forks
0Open issues
Language
2026-08-17Last push
Cross-platformPlatform

What it does

Authentication reverse-proxy gateway plugin for DeepSeek Harness Web

Our take
Unverified — not yet verified

Authentication reverse-proxy gateway plugin for DeepSeek Harness Web Not yet verified — install and test it yourself.

“Unverified” means our automated CI has not yet installed this plugin. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

Plugin author? Get the “Verified” label — submit your own evidence (screenshots, logs, or a short demo) and we'll review and flip the badge.

Submit verification evidence ↗

README

dsh-web-auth-gateway

A standalone authentication reverse-proxy gateway plugin for DeepSeek Harness Web.

The plugin serves a login page on a separate loopback port. After authentication, it proxies the complete DSH Web surface, including normal pages, plugin assets, API requests, and WebSocket upgrades.

Features

  • First-run administrator account creation
  • scrypt salted password hashing; plaintext passwords are never stored
  • HttpOnly and SameSite=Strict session cookie
  • Server-side in-memory sessions
  • HTTP, API, and WebSocket authentication gate
  • Settings card under Settings > Plugins > Web UI Plugins
  • Configurable gateway port and session lifetime
  • Official @deepseek-ai/* NPM SDK only
  • No changes to DeepSeek Harness source code

Install

Requires Node.js 22 or newer and DeepSeek Harness.

dsh plugin --profile web add github:luodeb/dsh-web-auth-gateway

Restart DSH Web:

dsh web --host 127.0.0.1 --port 3080

Then open:

http://127.0.0.1:3090

On first access, create the administrator account. Later visits require that account.

Settings

Open Settings > Plugins > Web UI Plugins > Login gateway.

Gateway settings

Defaults:

enabled: true
port: 3090
sessionTtlHours: 12

Settings are persisted through the official DSH Settings service in ~/.dsh/settings.yaml.

Login page

First-run administrator setup

The password credential is stored at:

~/.dsh/web-auth-gateway/credential.json

The file contains only the username, random salt, and scrypt password hash. Its mode is 0600.

Security boundary

The original DSH Web port must remain bound to 127.0.0.1 or another trusted interface. If the upstream port is exposed to untrusted clients, they can bypass the gateway.

This plugin currently listens on 127.0.0.1. Use a TLS reverse proxy or a secure tunnel in front of the gateway for remote access. Do not expose plaintext HTTP directly to an untrusted network.

Sessions are stored in memory and are invalidated when DSH restarts.

Development

corepack enable
pnpm install
pnpm build
pnpm typecheck
pnpm test

Install the local checkout into the Web profile:

dsh plugin --profile web add link:$(pwd)

License

BSD-3-Clause

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-web-auth-gateway for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:luodeb/dsh-web-auth-gateway

Headless (CLI) profile:

dsh plugin --profile headless add github:luodeb/dsh-web-auth-gateway

Test report

Not yet L3-verified — see failure note below if we already ran it.

Status: pending · last test 2026-08-25 · flagged webonly
Note: 验证: web-only;待 L4 web CDP;L4 web CDP runtime-fail on dsh 0.1.0-rc.8. Browse all pending failures →
Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7789 plugins →