前言¶
在 DeepSeek Harness(DSH)的生態中,開發或使用智能體時經常需要調用 GitHub、npm 或各類 API 接口。這些操作通常需要 Token 進行身份驗證。直接將 Token 寫入對話歷史或創建本地明文文件不符合安全規範。dsh-token-vault 插件提供了一種解決方案:將 Token 存儲在 DSH 自身的憑證記錄空間中,並在運行時通過環境變量注入,確保機密不離開主機。
核心功能¶
插件提供了 7 個面向 Agent 的工具,用於管理憑證的生命週期與使用:
vault_list:列出已存儲的 Token 名稱,不顯示任何值。vault_has:檢查某個 Token 是否存在。vault_set:存儲或更新 Token,執行過程中不會回顯輸入的值。vault_remove:刪除指定的 Token。vault_import:從gh auth token(源:gh)或~/.npmrc(源:npm)導入 Token。vault_run:運行gh、npm、npx、node或git命令,並將 Token 注入到對應的環境變量(github/gh →GH_TOKEN,npm/node →NPM_TOKEN,可通過env_name覆蓋)。vault_show:僅此路徑可能泄露 Token,使用時必須設置confirm: true。
安裝與啓用¶
安裝命令如下。插件聲明瞭 dsh.bundle.patch,安裝後會自動掛載,但需要重啓 DSH Desktop 才能生效。
dsh plugin --profile desktop add @yyfather/dsh-token-vault
安裝完成後,可以通過以下方式管理 Token:
* 設置 → 市場 → 已安裝:在此處啓用、更新或卸載插件。
* 設置 → 憑證庫:直接在此頁面錄入 Token 或導入已有憑證。
安全機制¶
該插件的安全設計基於三個層面:
- 存儲層:使用 DSH 的憑證記錄空間(路徑爲
dsh-token-vault/<name>),採用原子寫入(modifyRecord),不生成任何明文文件。 - 使用層:
vault_run僅將 Token 放入子進程的環境變量中,標準輸出、標準錯誤及日誌文件中均不會包含 Token 值。 - 控制層:插件會自動注入
token-vault-usage提示規則,強制 Agent 在對話中不打印或持久化 Token。
典型用法¶
使用 vault_run 時,Agent 會自動注入環境變量以執行命令。例如,調用 gh 工具時,vault_run 會設置 GH_TOKEN 環境變量,從而在日誌中完全不暴露 Token 的情況下完成 GitHub 操作。
適用場景與注意¶
該插件適合需要在 DSH 環境中安全調用外部命令行工具(如 gh、npm)的場景。鑑於插件以當前 DSH 進程權限運行,建議在安裝前檢查源碼與許可證。
結語¶
dsh-token-vault 爲 DeepSeek Harness 提供了從存儲到使用的全鏈路憑證安全方案。更多詳情、源碼及目錄信息,請參考以下鏈接。
- GitHub 倉庫: https://github.com/YYfather/dsh-token-vault
- DSH 插件目錄: https://www.skillhub.cn/plugins/YYfather/dsh-token-vault