dsh-ide-bridge:在 JetBrains IDE 工具窗口裏接 DeepSeek Harness

前言

用 DeepSeek Harness(DSH)做智能體開發時,常見做法是在桌面端或瀏覽器裏開完整 WebUI,再在 IDE 裏寫代碼,兩邊來回切標籤頁。另一類 JetBrains 插件會把靜態地址嵌進工具窗口,但不一定對得上「已在運行的桌面端」、流式輸出和工具審批。

dsh-ide-bridge(維護者 smynbnb,分類:客戶端)把 DSH 接到 IntelliJ IDEA 右側工具窗口:桌面端照常跑,IDE 裏用精簡面板對話、看 SSE 流式輸出、處理權限審批,並可橋接 IDE 側的 MCP 工具。倉庫標明爲個人項目、開發中,主要在 Windows + IntelliJ IDEA 2026.2 + DSH 0.2.1 上驗證;package.json 要求 Node >= 20、DSH >=0.2.2-rc.1 <0.3.0,當前包版本 0.5.6,MIT 許可證。

這是什麼

倉庫分三塊:dsh-plugin/(DSH 側 Node ESM)寫交接文件、註冊工作區、提供面板路由與 MCP 橋;plugin/(IDE 側 Java + JCEF)讀交接文件、內嵌面板並按 IDE 主題取色;tools/ 供離線測試。IDE 插件 fork 自 Chocomintopia/dsh-jetbrains-plugin(MIT),在「靜態 WebUI 工具窗口」基礎上改爲連接運行中的桌面端,並增加精簡面板、流式、審批與主題跟隨。

核心功能

下面按 README 已列能力歸納,便於對照是否滿足你的 workflow。

面板與連接

  • 內嵌精簡面板:保留對話、思考、工具軌跡和輸入框;與桌面端同源加載,複用登錄 cookie。
  • 流式輸出:模型逐字幀、會話事件、工具調用經 SSE 推送到面板,無需輪詢。
  • 斷線重連:桌面端重啓、token 輪換後,IDE 側自動重連並回到精簡面板。
  • 面板切換:工具窗口標題欄用 COMBO 選擇器,可在「DeepSeek Harness」精簡面板與「DeepSeek Chat」網頁之間切換。

審批、權限與會話

  • 審批窗口:工具要權限時,面板底部彈出卡片(工具名、原因、調用 id),支持允許一次或拒絕;只處理 IDE 面板所屬會話,其他會話仍在桌面端處理。
  • 權限選擇:只讀 / 工作區可寫 / 完全權限,可切換當前會話權限預設。
  • 會話管理:頂部「會話」菜單可新建、歸檔當前並新建、或切回本項目最近會話;歸檔僅隱藏,不刪歷史。

模式與輸入

  • Plan → Act 自動續跑:從 Plan 切到 Act、輸入框爲空且上一輪已有回覆時,面板自動發模式切換指令;輸入框已有內容時不搶發。Plan 模式下寫操作仍由服務端 tools.guard 攔截。
  • 插話發送:回合運行中點「插話」或 Ctrl/⌘+Enter,以 steer 注入當前回合;空閒時按鈕禁用。

IDE 集成

  • 主題跟隨:採樣當前 LookAndFeel 顏色(含 Islands、Darcula、IntelliJ Light、高對比與自定義主題),切換後重刷面板。
  • 工作區自動註冊:在 IDE 打開項目時,DSH 側自動註冊爲工作區,新會話默認落到該項目。
  • MCP 工具橋:IDE 在線時將 IDE MCP 工具註冊進模型工具表,關閉 IDE 後自動註銷;中轉僅監聽 127.0.0.1。
  • 選中代碼發送:IDE 側能力(與 JCEF 工具窗口一併提供)。

架構要點

IDE 工具窗口(JCEF)通過同源請求訪問 DSH 側 ui-server.js 提供的 /api/ide-panel 等路由;DSH 插件啓動時把帶 token 的地址寫入 %LOCALAPPDATA%\dsh-ide-bridge\bridge.json(Linux/macOS 上對應本機用戶數據目錄下的 dsh-ide-bridge),IDE 的 BridgeConfig 讀該文件並校驗進程與端口。MCP 路徑爲 IDE 內 McpRelayServer(README 示例端口 64343)與 DSH MCP 客戶端、IDE MCP Server(可選,示例端口 64342)串聯。

主要面板 API(方法與用途見 README):

路由 方法 說明
/api/ide-panel GET 精簡面板頁面
/api/ide/stream GET SSE:快照、事件、逐字幀、審批
/api/ide/approval POST 審批決定(allow / reject)
/api/ide/permission GET/POST 讀/切換權限預設
/api/ide/plan-mode POST Plan/Act 開關(配合 tools.guard)
/api/ide/context GET 將項目目錄解析爲 DSH 工作區

安裝與啓用

安裝分 DSH 側與 IDEA 側兩步;官方 README 未提供 dsh plugin add github:... 一類命令,而是本地 file: 依賴與 Cordis patch。

前置

  • DeepSeek Harness 桌面端(帶 web)。
  • IntelliJ IDEA 2026.2+(需 JCEF,平臺 build 262+)。
  • 可選:IDEA MCP Server 插件(端口 64342),用於把 IDE 工具暴露給模型。

1. 安裝 DSH 側插件

先把倉庫中的 dsh-plugin/ 放在穩定目錄,再在 DSH profile(示例:%USERPROFILE%\.dsh\profiles\desktop)中操作。

  1. 在 profile 的 package.json 的 dependencies 增加(路徑改爲你本機實際位置):
"dsh-ide-bridge": "file:C:/path/to/dsh-plugin"
  1. 在 profile 目錄安裝依賴:
pnpm install
  1. 在 cordis.patch.yml 追加:
- insert:
    - id: dsh-ide-bridge
      name: 'dsh-ide-bridge'
    - id: dsh-ide-mcp
      name: 'dsh-ide-bridge/mcp'
    - id: dsh-ide-ui
      name: 'dsh-ide-bridge/ui'
  1. 重啓 DeepSeek Harness。啓動後應生成 %LOCALAPPDATA%\dsh-ide-bridge\bridge.json 並監聽本機端口。dsh-ide-ui 會註冊 IDE 面板專用同源路由。

2. 構建並安裝 IDEA 插件

在倉庫根目錄執行(-IdeRoot 改爲本機 IDEA 安裝路徑):

.\plugin\build.ps1 -IdeRoot "D:\Program Files\JetBrains\IntelliJ IDEA 2026.2.2"

產物在 plugin\releases\dsh-ide-bridge.jar。在 IDEA 中 Settings → Plugins → ⚙ → Install Plugin from Disk… 選擇該 jar 並重啓。也可將 jar 放入 JetBrains 配置目錄下對應版本的 plugins\dsh-ide-bridge\lib\(README 以 Windows 路徑爲例)。

重啓後打開右側工具窗口 DeepSeek Harness Bridge,面板應連上桌面端當前會話。

配置項

位置 項 說明
IDEA JVM 參數 -Ddsh.bridge.path=<file> 覆蓋交接文件路徑(測試用)
IDEA JVM 參數 -Ddsh.web.url=<url> 無 DSH 側插件時,手工指定帶 token 的地址
DSH 側插件 config.path 覆蓋 bridge.json 輸出路徑

典型用法

  1. 啓動 DSH 桌面端並完成上述兩側安裝;確認 bridge.json 已生成且 IDE 工具窗口能加載精簡面板。
  2. 在 IDEA 中打開目標項目,讓 DSH 自動註冊工作區;在面板頂部「會話」中新建或切換會話。
  3. 對話過程中若模型發起需審批的工具調用,在面板底部卡片選擇允許一次或拒絕;按需切換隻讀 / 可寫 / 完全權限。
  4. Plan 模式下討論方案,切換到 Act 且輸入框爲空時,可利用自動續跑進入執行;長跑回閤中用「插話」修正方向。
  5. 若啓用 MCP Server 插件,IDE 在線時模型可調用經中轉註冊的 IDE MCP 工具。

本地開發與驗證(無需 IDE)可運行:

node tools\test-ui-server.mjs
node tools\test-panel-ui.mjs

適用場景與注意

適合誰:主要在 JetBrains IDE(尤其 IntelliJ IDEA 2026.2+)裏寫代碼、又希望 DSH 會話、審批和 MCP 與當前項目同屏的開發者。社區目錄頁歸類爲客戶端插件,與 DeepSeek / 幻方無官方從屬關係;安裝前請自行查看源碼與 MIT 許可證。

安全:bridge.json 含本次啓動訪問 token,權限建議爲 0600,勿提交或分享,等同於桌面端登錄憑據。面板與 DSH 同源,經 Host/Origin 校驗;MCP 中轉不對外網開放。

權限與風險:DSH 側插件以當前 DSH 進程權限運行,模型在「完全權限」或寫工作區預設下可能改文件、執行工具;使用前確認 profile 與權限預設符合你的信任邊界。

平臺:README 開發狀態與示例以 Windows 爲主;Linux/macOS 用戶需自行映射 profile、LOCALAPPDATA/bridge.json 路徑,並在對應平臺構建、安裝 IDEA 插件。

結尾

dsh-ide-bridge 把運行中的 DSH 桌面端接到 JetBrains 工具窗口:精簡面板、SSE、審批、主題跟隨與工作區/MCP 橋接,減少瀏覽器與 IDE 之間的切換。詳情與 issue 見 GitHub;插件也在社區目錄列出。

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

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

小夜