在 DeepSeek Harness (DSH) 的開發或維護工作中,環境變量(.env)的管理常是隱形痛點:代碼裏引用了變量卻忘記在配置文件中定義,或者定義了卻從未被使用,這往往導致部署失敗或資源浪費。dsh-env-manager 插件提供了自動化校驗與生成配置模板的功能。
這是一個運行在本地、無網絡依賴的 Node.js 工具,由用戶 uckkk 維護,屬於 admin-security 類別。它解決的核心問題是:如何快速校驗代碼引用與配置文件的一致性,並生成規範的 .env.example 文件。
安裝與啓用¶
安裝該插件需要在終端執行以下命令:
dsh plugin add dsh-env-manager
安裝成功後,需要在項目的 package.json 中配置 dsh.profile.bundles,加入 "dsh-env-manager",以確保插件在啓動時被正確加載。
核心功能¶
該插件主要包含兩個工具,通過掃描代碼與配置文件的比對來實現管理。
1. 引用檢測與比對¶
掃描項目代碼,識別常見環境變量引用方式(如 process.env.X、process.env["X"]、import.meta.env.X、os.getenv("X") 等),並將其與 .env 文件內容進行比對,返回“缺失”與“未使用”的變量清單。
2. 生成脫敏示例¶
根據現有的 .env 文件,生成 .env.example 文件。該文件會保留所有的鍵名,但將具體的值替換爲脫敏符號(如 ***),方便團隊共享配置模板,而無需暴露敏感信息。
3. 智能掃描範圍¶
掃描過程會自動跳過 node_modules、.git 目錄,以及二進制文件和圖片文件,僅針對源代碼進行解析。
典型用法¶
在 DSH 會話中,通過指定工作目錄即可調用上述功能:
- 檢查項目中缺失或未使用的環境變量:
env_check(root="/workspace")
- 從現有 .env 生成一份脫敏的 .env.example:
env_example(root="/workspace")
注意事項¶
該插件爲純 Node 實現,不涉及任何網絡請求,也不依賴外部服務。但由於它會直接在當前 DSH 進程的上下文中運行第三方代碼,安裝前建議自行審閱源碼以確保安全性。
更多技術細節或更新,請訪問 GitHub 倉庫。