前言¶
在 DSH 工作流裏,維護 Grafana 儀表盤通常需要打開網頁、定位面板、手動修改 JSON,再確認發佈。這個過程容易打斷上下文。
dsh-grafana 是 DeepSeek Harness 的一個插件:先粘貼 dashboard URL 或 UID 獲取儀表盤,再通過對話修改 JSON,最後通過 Grafana HTTP API 寫回。它把「取 dashboard、查數據、改配置、推回寫」接到 DSH 的對話和審批流程中。
DSH 的理念是「一切皆插件」。DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。
這是什麼¶
dsh-grafana 由 guhanfei-ai 維護,許可證爲 MIT,項目狀態爲 pre-1.0。
它解決的是 DSH 使用者需要頻繁維護 Grafana dashboard 的問題:面板、查詢、閾值、模板變量、佈局等內容可以通過對話修改,而不是每次手工編輯 JSON。
核心能力¶
下面列出的能力均來自已覈實事實:
- 通過瀏覽器 URL 或 UID 獲取 dashboard。
- 對大型 dashboard 請求緊湊的結構摘要。
- 按標題和標籤搜索 dashboard。
- 粘貼 dashboard 或 panel-view URL,查詢面板背後的即時數據。
- 複製 dashboard 成一份新的副本,並拿回新 dashboard 的 URL。
- 通過對話編輯 panels、queries、thresholds、variables 和 layout。
- 自動保留 dashboard 所在 folder。
- 寫入前檢測併發編輯。
- 每次寫入都需要 native DSH user approval。
- Service Account Token 保存在本地 DSH credential store 中。
安裝與啓用¶
先確認環境基線:
- Node.js:
20.11或更高。 - DeepSeek Harness:
0.1.0-rc.6。 - Grafana:Grafana 10/11 的 legacy Dashboard HTTP API。
Grafana 12+ 尚未納入已認證兼容範圍。
安裝命令如下:
dsh plugin --profile <profile> add github:guhanfei-ai/dsh-grafana
執行上面的步驟後,重啓所選的 DSH profile。
配置與權限¶
在 DSH Web 中打開:
Settings → Plugins → Grafana dashboard editor
需要配置兩項:
Service Account Token
Grafana URL
Service Account Token 用於訪問 Grafana。該 token 以 write-only 方式保存在 DSH 的 privileged loopback credential store 中,存儲值不會被讀回或展示。
Grafana URL 是 Grafana 的絕對基礎 URL。
普通 HTTP 會把 service-account token 以明文發送。經過不受信任網絡時,應使用 HTTPS。如果希望只允許 HTTPS,可以在插件配置中關閉 insecure HTTP:
allowInsecureHttp: false
Grafana 側建議按最小權限配置 RBAC:
dashboards:read
dashboards:write
folders:read
datasources:query
其中 folders:read 應覆蓋被編輯的 folders,datasources:query 還需要允許訪問實際被查詢的 datasources。
如果無法使用細粒度 RBAC,Grafana 的 Editor role 是備選。避免使用 Admin token。
典型用法¶
先獲取 dashboard。對於大型 dashboard,可以請求緊湊結構摘要,而不是完整 JSON:
grafana_get
summary: true
經過上面的步驟後,再根據摘要決定要修改哪些 panel、query、threshold、variable 或 layout。
查詢面板背後的即時數據時,可以粘貼 dashboard 或 panel-view URL。需要覆蓋模板變量時,可以傳 variables 參數。
單值示例:
{ "env": "prod" }
多值示例:
{ "host": ["www.ttpai.cn", "m.ttpai.cn"] }
修改完成後,寫入路徑會要求 native DSH user approval,並在寫入前檢測併發編輯。folder 會被自動保留。
適用場景與注意事項¶
適合以下情況:
- 使用 DSH 管理 Grafana 儀表盤。
- Grafana 環境爲 Grafana 10/11,使用 legacy Dashboard HTTP API。
- 希望通過對話方式修改 dashboard JSON,而不是頻繁打開 Grafana 頁面手工編輯。
- 需要把 dashboard 維護動作接入 DSH 的審批和憑據管理流程。
需要注意:
- 項目狀態是 pre-1.0。
- Grafana 12+ 尚未認證。
- 每次寫入都需要 DSH 用戶審批。
- 寫入前會檢測併發編輯。
- 普通 HTTP 會明文傳輸 service-account token,不受信任網絡應使用 HTTPS。
- 插件會以當前
dsh進程權限運行,安裝前應檢查源碼和 MIT 許可證。
鏈接¶
- 插件目錄頁:
https://www.skillhub.cn/plugins/guhanfei-ai/dsh-grafana - GitHub 倉庫:
https://github.com/guhanfei-ai/dsh-grafana