dsh-trace: DeepSeek Harness Web 插件

前言

DeepSeek Harness(DSH)的軌跡通常展示語義化交互,但底層的 HTTP 交換對調試來說是一個黑盒。dsh-trace 爲 DSH Web 增加了一個“請求追蹤”Tab,把大模型請求從“黑盒調用”變成可檢查的完整 HTTP 交換記錄。

插件定位

dsh-trace 是一個面向 DeepSeek Harness 的 Web 插件,由 weekitmo 維護。插件當前位於 weekitmo/oh-my-dsh-plugins monorepo 中,使用 @weekit/dsh-trace 包。

安裝與啓用

安裝前請確保環境滿足以下要求:
- Node.js ^22.19.0 或 >=24.0.0
- pnpm 11.7.0
- DeepSeek Harness 0.1.2-alpha.2

在插件源碼目錄執行以下命令:

pnpm install --frozen-lockfile
pnpm run build
dsh plugin --profile web add .

安裝完成後,重啓 DSH Web:

dsh web

核心功能

插件在 DSH 軌跡旁增加“請求追蹤”Tab,按當前會話篩選請求。它記錄實際發出的 HTTP method、URL、請求頭、請求體、響應狀態、響應頭、響應體、耗時和重試次數。

在詳情頁,可以通過兩種視圖查看數據:
- 對話閱覽:將請求和響應還原爲可閱讀的對話結構,顯示請求上下文、模型響應、思考過程、工具定義、工具調用和工具結果。
- 接口數據:查看請求概覽、請求頭、響應頭,以及格式化或原始的請求/響應 Body。

插件支持以下格式:
- 模型協議:OpenAI Chat Completions、OpenAI Responses、Anthropic,以及常見 Gemini-compatible 請求和響應格式。
- 數據內容:普通 JSON、SSE 流式響應、推理內容、工具調用、工具結果和附件標記。

請求列表支持自動刷新、手動刷新、游標分頁、複製 URL、顯示每條記錄的保留截止時間,以及清空當前會話追蹤記錄。

在 UI 適配上:
- 桌面端列表和詳情使用獨立滾動區,默認不自動選中請求。
- 移動端保持列表到詳情的進入和返回流程,不需要橫向滾動。

保留與設置

默認只保留最近 24 小時。在 DSH 設置 > 通用 > 請求追蹤保留時間 中配置:
- 最近 24 小時
- 最近 3 天
- 最近 7 天
- 自定義數值,單位可選小時或天

數據存儲在插件自己的 SQLite 數據庫中:

$DSH_HOME/dsh-trace/requests.sqlite

使用方法

  1. 打開一個已有內容的 DSH 會話。
  2. 在會話頂部切換到“請求追蹤”。
  3. 從左側請求列表選擇一次模型 HTTP 請求。
  4. 在詳情頂部切換“對話閱覽”或“接口數據”。

限制與注意事項

  • 捕獲範圍:只有 DSH 在 llm/stream 上下文中通過 globalThis.fetch 發出的模型請求會被捕獲。瀏覽器 RPC、工具調用和其他插件的 HTTP 請求不會進入此列表。
  • 數據歸屬:請求追蹤是官方軌跡的增強視圖,不是 Session event,不會進入 Session 導出或 fork 歷史。
  • 隱私與脫敏:數據寫入磁盤前會進行通用脫敏,包括常見憑據請求頭、URL 查詢參數中的憑據等。但提示詞、工具定義、模型輸出、自定義請求頭和業務 Payload 仍然可能包含隱私或敏感業務數據。
  • 配置生效:修改保留時間可以直接通過設置頁面生效。修改採集字節上限或數量上限後需要重啓插件所在的 DSH Web。

總結

dsh-trace 將原本不可見的 HTTP 交換記錄化爲可見的調試數據,配合脫敏機制,適合開發者檢查模型調用細節。相關目錄與源碼請參考:weekitmo/dsh-trace

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜