dsh-share-room
Verifieddsh-share-room · v0.1.1 · MIT · Web UI
Invite others into your DeepSeek Harness (DSH) AI conversation: they join from a link, discuss with you and ask the AI together. No account needed.
Install
dsh plugin add dsh-share-room Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Tags
Creators
Readme
dsh-share-room
邀請朋友加入你和 AI 的對話。大家用手機或電腦打開連結就能一起討論、一起問 AI,不需要帳號。
這是 DeepSeek Harness(DSH) 的外掛。

完整影片(含字幕):docs/media/demo.mp4
它做什麼
- 一鍵分享:在對話標題列按「🔗 分享」。外掛會另外 fork 一份分享用的對話,原本的對話維持私人。
- 免帳號加入:每位訪客一條邀請連結,用手機或電腦打開就能加入,只能用一次。不需要安裝 DSH,也不用知道你的站台密碼。
- 多人群聊:一個分享最多 20 位訪客,每個人都用自己的名字發言。
- 兩種發言:
- 💬 討論:人跟人聊,AI 不會插嘴。
- 🤖 問 AI:AI 會讀到上次問 AI 之後的討論再回答,大家都看得到答案。
- 只看得到這一段:訪客看不到你的其他對話、檔案或設定。
- 隨時收回:你可以移除某位訪客、關掉訪客問 AI,或結束分享。結束後訪客立刻不能發言,可以選擇保留唯讀頁讓對方閱讀和下載。
- 站主開關:整個功能可以在「設定 → 一般 → 對話分享」關掉。
畫面
| 站主(電腦) | 訪客(手機) |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
使用前要知道的事
訪客可以問你的 AI,AI 會用它看得到的東西回答。dsh-share-room 會限制影響範圍,但沒辦法讓 AI 保守秘密。
- 費用算你的。 AI 在你的 DSH 上執行,用你的模型金鑰。不管是誰問,費用都由你支付。訪客問 AI 的次數全房共用一個上限,預設 50 次。
- 分享用的對話是唯讀的。 建立分享時,外掛會把 fork 出來的對話切到 DSH 的
read-only權限,要更多權限得經過你核准;切換失敗就不會建立分享。如果你之後調高權限,訪客會暫時不能問 AI,直到改回唯讀。原本的對話維持原來的權限。 - 唯讀還是讀得到。 AI 可以讀你的 DSH 讀得到的檔案,再寫進回答裡。AI 看得到的,訪客都可能拿到。 只分享給你信得過的人,並讓分享的對話跑在只放必要內容的工作區。
- 訪客的文字會標成不可信。 AI 會知道誰在說話、訪客不是擁有者,但模型還是可能被說服。
- 每件事都看得到。 所有發言和 AI 的動作都記錄在分享的對話裡,你可以即時看到。結束分享時,訪客還在排隊的提問也會一起撤回;但已經看過的內容、AI 已經做完的事,都無法收回。
- 帶入歷史時,訪客看得到整段對話。 建立分享時勾選「帶入這段對話到目前為止的內容」,訪客就會看到到目前為止的所有內容,包括 AI 的回答。
- 訪客頁和你的 DSH 在同一個網域。 訪客頁用嚴格的 CSP(
script-src 'self',不允許 inline script)。所有內容都當純文字處理,AI 回答的 Markdown 只轉成固定幾種元素,連結和圖片都不啟用。但萬一出現能注入程式的漏洞,程式會帶著你的登入狀態執行。要最強的隔離,請讓/share/走另一個主機名稱。
安裝
需求:DSH 0.1.5-rc.1 或 0.1.7-rc.2(都測試過)、Node.js 22 以上,以及一個對方連得到的 HTTPS 網址(公開網域或 tunnel)。
安裝到 DSH 的 web profile:
dsh plugin --profile web add dsh-share-roomDSH 會用 pnpm 從 npm 安裝,並自動把它加進 profile 的
dsh.profile.bundles。重新啟動 DSH。對話標題列會出現「🔗 分享」。
更新用 dsh plugin --profile web update dsh-share-room,移除用 dsh plugin --profile web remove dsh-share-room。
不想從 npm 安裝的話,也可以直接用 GitHub 的版本:dsh plugin --profile web add github:yillkid/dsh-share-room#v0.1.1。
各部分的位置:
- 擁有者的 API 在
/api/share-room.*,沿用 DSH 本身的登入。 - 訪客頁在
/share/<id>/,由外掛自己驗證訪客。 - 如果 DSH 前面有整站登入閘門(例如
@summersec/dsh-web-auth),閘門必須放行/share/,而且只放行它。做法見 docs/web-auth-public-prefixes.md。 - DSH 經由反向代理以 HTTPS 提供時,只要代理送出
X-Forwarded-Proto: https,訪客 cookie 就會自動加上Secure。也可以設定SHARE_ROOM_SECURE_COOKIE=1強制開啟。
開關
裝好預設就是開的。站主可以在「設定 → 一般 → 對話分享」關掉。
- 關閉時不能建立新分享或邀請,所有訪客會立刻看到「分享暫停中」。
- 分享、連結和紀錄都不會刪除,重新開啟後就恢復。
站台範本如果想預設關閉,可以在 cordis.patch.yml 裡給 share-room 設 config: { enabled: false }。站主自己的選擇優先。
開發
node --test test/*.test.js # 單元與伺服器測試,不需要 DSH
node e2e/two-browsers.mjs # 兩個瀏覽器的端到端測試,需要拋棄式 DSH,見 e2e/README.md
設計與決策紀錄見 PLAN.md,版本紀錄見 CHANGELOG.md。





