dsh-secret-paste:把粘貼到 DSH composer 的密鑰替換爲 [secret:REF]

前言

在 DeepSeek Harness(DSH)的 Web profile 中,composer 裏粘貼密鑰、token 等敏感字符串時,明文可能直接進入發送給模型的消息和會話歷史。dsh-secret-paste 針對這個場景:檢測粘貼進 composer 的密鑰,將密鑰值存入官方 credentials seam,並在草稿中替換爲 [secret:REF] 佔位符。模型只有在需要時,才通過專用工具解析真實值。

這是什麼

dsh-secret-paste 是一個 DSH 插件,維護者爲 zhujiaqi,許可證爲 MIT。它用於在 DSH Web profile 中減少敏感字符串以明文出現在消息和會話歷史中的情況。

核心能力

  • 檢測粘貼進 composer 的密鑰。
  • 使用 @sanity-labs/secret-scan 對粘貼文本進行掃描。
  • 將密鑰值存入官方 credentials seam:
~/.dsh/.credentials.yaml

文件權限爲 mode 0600。

  • 在草稿中將匹配範圍替換爲 [secret:PASTE_N] 佔位符。
  • 提供 secret_resolve(ref) 工具供模型按需解析真實值。
  • 支持嵌套佔位符的遞歸解析。
  • medium confidence 命中時保留草稿文本,並提示確認 Hide / Ignore。
  • 支持對檢測器不識別的文本進行手動標記並 Hide & store。
  • 使用碰撞安全的 refs,避免覆蓋已配置 ref。

真實值只存在於當前標籤頁內存和 ~/.dsh/.credentials.yaml(mode 0600)。secret_resolve 的工具描述要求模型不要回顯、重複或將值寫入回覆、文件、命令或工具參數。

安裝與啓用

要求 DSH Web profile;本文示例使用 web。

前置條件:

dsh CLI
pnpm

dsh CLI 和 pnpm 需要在 PATH 中。dsh plugin 是 pnpm forwarder。

安裝插件:

dsh plugin --profile web add dsh-secret-paste

安裝完成後,重啓 dsh web 進程,因爲服務器端 secret_resolve 工具在啓動時加載。然後強制刷新瀏覽器標籤頁,使瀏覽器端 bundle 重新加載。

典型用法

1、在 composer 中粘貼 GitHub token(ghp_...)。檢測命中後,文本會被替換爲 [secret:PASTE_N],並顯示 chip。

2、medium confidence 命中時,草稿文本會保留,並提示確認 Hide 或 Ignore。

3、對檢測器不識別的文本,選中文本並使用 Mark selection as secret,然後 Hide & store。

4、模型需要真實值時調用:

secret_resolve(ref)

返回:

{ found, value, source }

5、若選擇內容中已經包含 [secret:REF],secret_resolve 會遞歸解析嵌套佔位符。

適用場景與注意

適合在 DSH Web profile 中需要處理密鑰、token 等敏感字符串,並希望在消息與會話歷史中避免明文出現的場景。

注意事項:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • 許可證爲 MIT;vendor/secret-scan.cjs 爲 @sanity-labs/secret-scan v1.1.0(MIT),許可證保留在:
vendor/secret-scan.LICENSE
  • 安裝後需要重啓 dsh web 進程,並強制刷新瀏覽器標籤頁。
  • 該插件面向 DeepSeek Harness Web profile;示例均使用 web。

項目倉庫:

https://github.com/zhujiaqi/dsh-secret-paste
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜