前言¶
把 DeepSeek Harness(下稱 DSH)的 Web 界面跑在共享機器或局域網環境裏時,能打開這個地址的人都能直接進入界面操作。如果只想加一層最基礎的賬號門禁,不必改動 DSH 本體,用插件 bundle 就能做到。下面介紹的 @dsh-login-gate/auth-gate(倉庫 javaxiaov/deepseek-herness-login)就是這樣一款插件:未登錄時用全屏登錄頁蓋住整個應用,登錄後可以在系統設置裏改賬號、改密碼、退出登錄。
這是什麼¶
它是一個爲 DeepSeek Harness Web 界面提供登錄門禁與賬號管理的插件 bundle,作者爲 javaxiaov,包版本 1.0.0,許可證 MIT。Host 端負責賬號存儲與 HTTP 路由,瀏覽器端負責登錄遮罩與賬號設置頁;客戶端 bundle 聲明 platform: web、immediately: true。
倉庫目錄結構如下:
dsh/
index.js Host 端:HTTP 路由(登錄/狀態/退出/改密)
account-store.js Host 端:scrypt 哈希 + 本地持久化存儲
client.js 瀏覽器端:登錄遮罩 + 賬號設置頁(lazy-CJS bundle)
cordis.patch.yml 插件裝載配置
package.json 包聲明(dsh.bundle / dsh.client)
核心功能¶
以下能力均來自倉庫 README:
- 登錄門禁:未登錄時全屏登錄頁覆蓋整個應用,無法操作任何功能。
- 賬號設置:系統設置裏新增「賬號設置」頁面,可修改賬號名和密碼。
- 退出登錄:設置頁頭部和賬號設置頁均有紅色「退出登錄」按鈕,點擊後立即切回登錄頁,只退出賬號,不影響應用。
- 多語言:跟隨 DeepSeek Harness 界面語言自動切換(設置 → 外觀 → 語言),支持中文與 English。
- 安全存儲:密碼以加鹽 scrypt 哈希持久化到本地文件,不保存明文。
- 持久化:賬號、密碼修改重啓應用後依然保留。
安裝與啓用¶
本插件以用戶 profile 的 bundle 形式安裝。它的 package.json 聲明瞭 private: true,安裝方式是 profile 內本地 link(bundle 引用 + pnpm install),不是 npm 安裝,README 也沒有提供 dsh plugin add 之類的命令。
具體步驟如下:
1、將倉庫內容放入 profile 的 bundles 目錄,例如 ~/.dsh/profiles/web/bundles/auth-gate/。
2、在 profile 的 package.json 中添加 bundle 引用:
{
"dsh": {
"profile": {
"bundles": [
"@dsh-login-gate/auth-gate"
]
}
},
"dependencies": {
"@dsh-login-gate/auth-gate": "link:./bundles/auth-gate"
}
}
3、在 profile 目錄執行下面的命令建立鏈接:
pnpm install
4、重啓 DeepSeek Harness 應用。經過上面的步驟,未登錄狀態下打開 Web 界面會先看到全屏登錄頁,默認賬號 admin,密碼 admin123。
賬號數據與接口¶
賬號數據保存在 <profile 目錄>/login-gate-accounts.json,密碼字段只存加鹽 scrypt 哈希:
{
"username": "admin",
"password": "scrypt$16384$8$1$<salt>$<hash>",
"sessionToken": null
}
Host 端(dsh/index.js + account-store.js)暴露四個接口:
| 方法 | 路徑 | 說明 |
|---|---|---|
| GET | /login-gate/status?token=... |
校驗會話 |
| POST | /login-gate/login |
登錄,返回 token |
| POST | /login-gate/logout |
退出登錄,清空會話 |
| POST | /login-gate/update |
修改賬號名/密碼(需當前密碼) |
適用場景與注意事項¶
適合把 DeepSeek Harness Web 界面跑在共享機器或局域網、需要一層賬號門禁的場景;它只做登錄與賬號管理,不需要引入額外服務。
使用前注意以下幾點:
1、默認賬號 admin / 密碼 admin123 公開寫在 README 裏,安裝後第一件事應是通過「賬號設置」修改。
2、修改賬號名或密碼時,接口要求提供當前密碼。
3、插件以當前 dsh 進程的權限運行,安裝前建議先通讀倉庫源碼,並確認許可證條款(MIT,詳見倉庫 LICENSE 文件)。
4、客戶端 bundle 平臺爲 web,適用於 Web 界面。
小結¶
auth-gate 用一個 bundle 解決了 DSH Web 界面的訪問門禁與賬號管理:放入 bundles 目錄、在 package.json 里加引用、執行 pnpm install 後重啓即可生效,密碼以加鹽 scrypt 哈希落盤、重啓不丟失。
倉庫地址:https://github.com/javaxiaov/deepseek-herness-login ;社區插件目錄收錄頁:https://www.skillhub.cn/plugins/javaxiaov/deepseek-herness-login (獨立社區站點,與 DeepSeek、幻方無官方從屬關係)。