在 DeepSeek Harness(DSH)的開發流程中,直接在側邊欄調試 HTTP 接口能顯著提升效率。dsh-getman-panel(以下簡稱 Getman)是 dsh-better-sidebar 的配套插件,它將一個輕量級的 API 測試工具集成到了 DSH 的 Web 界面中。
作爲 API 測試側邊欄面板,Getman 的核心價值在於零跳轉調試與CORS 繞過。它不依賴外部應用,直接複用 DSH 進程的權限進行網絡請求轉發,適合開發者快速驗證接口返回。
核心功能¶
Getman 提供了完整的請求構建、響應查看與歷史管理能力:
- 請求編輯:支持 GET/POST/PUT/PATCH/DELETE/HEAD/OPTIONS 等標準 HTTP 方法。界面提供 URL、Params、Headers、Body 四個區域的編輯入口。
- 響應查看:顯示狀態碼、耗時、響應大小。響應體支持 JSON 自動美化,並提供一鍵複製和響應頭查看功能。
- 歷史記錄:全局共享最近 100 條請求記錄,所有工作空間共用。支持點擊歷史條目回填、單項刪除和一鍵清空。
- 繞過 CORS:利用 DSH 進程的 host 半代理機制,支持測試任意 HTTP(S) 接口,無需額外配置代理服務器。
安裝與前置條件¶
Getman 作爲插件安裝,需滿足以下前置條件:
- DeepSeek Harness web 正常運行。
- dsh-better-sidebar 插件已安裝且版本 >= 0.12.0。
- 本地開發環境需安裝 Node.js >= 20 和 pnpm >= 10。
安裝命令¶
發佈版安裝使用以下命令:
dsh plugin --profile web add dsh-getman-panel
安裝完成後,重啓 dsh web 並在瀏覽器側邊欄點擊 + 菜單即可看到 Getman 選項。
本地開發(Link 方式)¶
如需參與開發或修改源碼,需執行 link 方式掛載:
- 編輯
~/.dsh/profiles/web/package.json,在dependencies中增加"dsh-getman-panel": "file:/path/to/dsh-getman-panel",並在dsh.profile.bundles中增加"dsh-getman-panel"。 - 在 profile 目錄執行
pnpm install。 - 重啓
dsh web(新增 bundle 或修改 host 路由需重啓)。 - 瀏覽器執行硬刷新(Cmd/Ctrl + Shift + R)以加載客戶端變更。
使用方法¶
Getman 的使用流程非常直觀:
- 打開面板:在側邊欄點擊
+,選擇 Getman。 - 構建請求:選擇請求方法,輸入目標 URL。展開 Params、Headers 或 Body 區域進行編輯。粘貼帶
?的 URL 會自動解析查詢參數。 - 發送請求:點擊 發送。發送過程中可隨時點擊 取消 中斷請求。
- 查看響應:響應結果展示在下方,包含狀態碼、耗時、大小。響應體支持 JSON 格式化,鼠標懸停可點擊右上角
⧉圖標複製。 - 管理歷史:每次發送自動記錄。點擊歷史條目可將請求回填到編輯區,支持刪除單條或一鍵清空。
技術細節與注意事項¶
- 代理路由:插件通過
/dsh-getman/api/proxy路徑進行代理轉發,該路徑由 host 半(Host-side)代碼註冊。 - 數據存儲:歷史記錄與草稿持久化在瀏覽器的
localStorage中,Key 爲dsh-getman-panel:global,所有工作空間共享。 - 開發調試:
- 修改客戶端代碼後,必須進行瀏覽器硬刷新才能生效。
- 修改 Host 代碼或新增 bundle 後,必須重啓
dsh web。
Getman 依賴 MIT 許可證,源碼與目錄可在 GitHub 查看。