bitxeno/dsh-github-picker:在 DeepSeek Harness 中引用 GitHub Issue 和 PR

在 DeepSeek Harness (DSH) 的 Web 界面中,智能體在處理代碼相關問題時,經常需要引用倉庫中的 Issue 或 Pull Request。手動複製 URL 或在瀏覽器和編輯器之間切換會打斷對話流,降低效率。bitxeno/dsh-github-picker 插件通過集成 GitHub CLI,讓用戶在聊天輸入框中直接搜索並插入引用,無需離開界面。

插件簡介

該插件由 bitxeno 維護,屬於「聯網工具」分類。它利用 gh CLI 獲取當前工作區倉庫的 Issue 和 PR 信息,並提供一個搜索彈窗。用戶可以通過點擊工具欄的 GitHub 圖標,在本地過濾並選擇引用,支持 @owner/repo#number 或 URL 格式。

核心功能

  1. 本地搜索過濾:在彈窗中輸入編號或標題,列表會實時過濾。數字前綴優先匹配編號。
  2. 滾動加載:支持無結果上限,列表每頁顯示 12 條,滾動到底部自動加載更多。
  3. 引用插入:點擊列表項即可將選中的引用插入到輸入框,支持 @owner/repo#number 或 URL 格式。
  4. 草稿掃描:輸入前,Host 會自動掃描草稿中的 GitHub 引用(URL、@owner/repo#number 或純 #number),並顯示匹配信息。
  5. 零依賴認證:僅依賴 gh CLI,複用本地 gh 登錄狀態,無需配置 OAuth 或存儲憑據。

安裝與啓用

安裝該插件需要擁有 DeepSeek Harness 的 Web profile。執行以下命令安裝:

dsh plugin --profile web add dsh-github-picker

安裝或更新後,必須重啓 dsh web 服務才能生效。插件在安裝後默認處於開啓狀態,無需額外啓用開關。

使用方法

  1. 打開搜索:在聊天輸入框的工具欄中,找到 GitHub 圖標並點擊,會彈出搜索窗口。
  2. 過濾結果:在窗口中輸入數字或標題進行本地過濾。按 Escape 鍵或點擊窗口外部可關閉彈窗。
  3. 插入引用:點擊列表中的某一行,將對應的引用插入到光標位置。
  4. 調整格式:在「配置化插件」設置卡片中,可以調整「插入格式」,默認爲 @owner/name#number,也可切換爲 GitHub URL。

配置項

插件支持通過 Host 配置調整行爲。在選定的 profile 目錄下編輯 cordis.patch.yml 文件:

- id: dsh-github-picker
  config:
    searchTimeoutMs: 15000  # 搜索超時時間(毫秒)
    repoCacheTtl: 30000     # 倉庫解析緩存時間(毫秒)

修改配置後,同樣需要重啓 dsh web 服務。

注意事項與適用場景

  • 前置條件:必須安裝並配置好 gh CLI,且當前工作區已配置 git remote(用於解析倉庫地址)。
  • 內容限制:插件僅解析倉庫地址和 Issue/PR 編號,不會獲取 Issue 的詳細內容或 Body。
  • 權限與安全:插件以當前 DSH 進程的權限運行,請確保從可信來源安裝並檢查許可證(MIT)。
  • 適用場景:適用於需要在對話中快速引用特定 Issue 或 PR 的開發者或技術助手。

總結

該插件通過複用 gh CLI 的能力,解決了在 Web 界面中快速引用 GitHub 問題的痛點。更多細節與源碼,可訪問 GitHub 倉庫。

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

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

小夜