ButterHost69/dsh-login-gateway ↗★ 0

dsh-login-gateway

DeepSeek Harness (dsh) plugin: a username, password and TOTP login front door for the Web UI, for tunneled or public deployments. 适合在公共或隧道部署环境下,需要为Web UI添加安全登录防护的用户。

Package
dsh-login-gateway
Compatibility
Unverified
Cordis peer range
^4.0.1
Version
0.1.0
License
MIT
Last updated
Oct 7, 2026

Other repositories with this package name

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ButterHost69/dsh-login-gateway

Configuration reference

Every field is optional, and every value has a default:

FieldDefaultMeaning
listenHost'127.0.0.1'Bind host of the gateway. '0.0.0.0' exposes the plain-HTTP leg to the network; prefer loopback plus a tunnel.
listenPort8080Gateway port. 0 asks the OS for a free port.
upstreamHost'127.0.0.1'The harness web server's host.
upstreamPortthe running web server's portOverride only when the harness listens somewhere the plugin cannot read.
loginPath'/login'Login form path, and the setup form while no account exists.
logoutPath'/logout'Sign-out path.
users[]Declared accounts, each { username, passwordHash, totpSecret }. An empty list means first-run setup.
branding.issuer'DeepSeek Harness'Product name on the login page.
totp.digits6Code length (6 or 8).
totp.periodSeconds30Seconds per time step.
totp.algorithm'sha1''sha1', 'sha256', or 'sha512'.
totp.windowSteps1Steps accepted either side of the current one.
session.maxAgeSeconds43200 (12 h)Session lifetime.
session.cookieName'dsh_login_session'Session cookie name.
session.secure'auto''auto' marks the cookie Secure over HTTPS; 'always' or 'never' force it.
rateLimit.maxFailures5Failures within the window that trigger a lockout.
rateLimit.windowSeconds300Sliding window length.
rateLimit.lockoutSeconds300Lockout length.
trustProxyfalseTrust the first X-Forwarded-For hop as the client address for throttling.