DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。智能體在管理基礎設施即代碼(IaC)時,需要直接執行底層工具來確認變更、查詢狀態或校驗配置。現有的純對話方式難以滿足對 IaC 流程的精細控制。dsh-terraform 插件提供了一套原生的 Terraform 工具集,讓智能體能夠直接操作 Terraform 的工作流。
插件定位¶
這是 WODE25500 維護的 DeepSeek Harness 插件。它是一個獨立社區項目,並非官方產品。插件基於 HashiCorp 的 Terraform(採用 BSL-1.1/MPL-2.0 許可證),旨在解決智能體如何安全、直接地管理 IaC 的問題。
核心能力¶
插件提供了 8 個原生工具,覆蓋 Terraform 的主要生命週期和查詢需求:
tf_init:初始化工作目錄。tf_plan:生成執行計劃。tf_apply:應用變更。tf_destroy:銷燬資源。tf_state:查詢狀態。tf_output:查詢輸出。tf_show:顯示當前狀態。tf_validate:校驗配置。
在安全邊界上,這些操作以只讀爲主(plan/state/output/show/validate),安全邊界清晰。
使用細節¶
變更檢測¶
tf_plan 使用了 Terraform 的 -detailed-exitcode 語義。當輸出中標註退出碼 2 時,表示配置有變更。這有助於智能體在自動執行前確認意圖。
Plan 文件模式¶
插件支持 plan -out 生成的文件模式。智能體可以先生成計劃文件,然後在確認無誤後復現執行。這種方式讓變更過程可復現、可審閱。
安裝與配置¶
安裝通過 Cordis Patch 方式進行。在終端執行以下命令:
pnpm dsh web --patch ./dsh-terraform/cordis.patch.yml
安裝完成後,需要在配置中插入工具定義。根據插件結構,通常配置如下:
- insert:
- id: terraform
name: './src/index.js'
config:
terraformPath: terraform
workdir: ./infra
其中 terraformPath 指定 terraform 二進制文件的路徑,workdir 指定默認配置目錄。
典型用法¶
智能體可以通過調用上述工具完成具體任務。例如:
- 使用
tf_validate校驗配置語法。 - 使用
tf_plan生成變更計劃,檢查是否有資源變更。 - 使用
tf_output查詢關鍵變量的值。 - 確認無誤後,使用
tf_apply應用變更。
注意事項¶
- 非官方項目:這是一個獨立社區項目,非 DeepSeek 或 HashiCorp 官方產品。
- 權限風險:插件以當前 DSH 進程的權限運行。在安裝前,建議檢查源碼與許可證。
- 依賴:插件依賴
@deepseek-ai/cordis和@deepseek-ai/dsh-tools作爲 peer dependencies。
通過這套工具,智能體可以更安全、可控地介入 Terraform 的管理流程。更多細節可參考 GitHub 倉庫。