在 DeepSeek Harness (DSH) 的 Web 界面中,智能体在处理代码相关问题时,经常需要引用仓库中的 Issue 或 Pull Request。手动复制 URL 或在浏览器和编辑器之间切换会打断对话流,降低效率。bitxeno/dsh-github-picker 插件通过集成 GitHub CLI,让用户在聊天输入框中直接搜索并插入引用,无需离开界面。
插件简介¶
该插件由 bitxeno 维护,属于「联网工具」分类。它利用 gh CLI 获取当前工作区仓库的 Issue 和 PR 信息,并提供一个搜索弹窗。用户可以通过点击工具栏的 GitHub 图标,在本地过滤并选择引用,支持 @owner/repo#number 或 URL 格式。
核心功能¶
- 本地搜索过滤:在弹窗中输入编号或标题,列表会实时过滤。数字前缀优先匹配编号。
- 滚动加载:支持无结果上限,列表每页显示 12 条,滚动到底部自动加载更多。
- 引用插入:点击列表项即可将选中的引用插入到输入框,支持
@owner/repo#number或 URL 格式。 - 草稿扫描:输入前,Host 会自动扫描草稿中的 GitHub 引用(URL、
@owner/repo#number或纯#number),并显示匹配信息。 - 零依赖认证:仅依赖
ghCLI,复用本地gh登录状态,无需配置 OAuth 或存储凭据。
安装与启用¶
安装该插件需要拥有 DeepSeek Harness 的 Web profile。执行以下命令安装:
dsh plugin --profile web add dsh-github-picker
安装或更新后,必须重启 dsh web 服务才能生效。插件在安装后默认处于开启状态,无需额外启用开关。
使用方法¶
- 打开搜索:在聊天输入框的工具栏中,找到 GitHub 图标并点击,会弹出搜索窗口。
- 过滤结果:在窗口中输入数字或标题进行本地过滤。按
Escape键或点击窗口外部可关闭弹窗。 - 插入引用:点击列表中的某一行,将对应的引用插入到光标位置。
- 调整格式:在「配置化插件」设置卡片中,可以调整「插入格式」,默认为
@owner/name#number,也可切换为 GitHub URL。
配置项¶
插件支持通过 Host 配置调整行为。在选定的 profile 目录下编辑 cordis.patch.yml 文件:
- id: dsh-github-picker
config:
searchTimeoutMs: 15000 # 搜索超时时间(毫秒)
repoCacheTtl: 30000 # 仓库解析缓存时间(毫秒)
修改配置后,同样需要重启 dsh web 服务。
注意事项与适用场景¶
- 前置条件:必须安装并配置好
ghCLI,且当前工作区已配置git remote(用于解析仓库地址)。 - 内容限制:插件仅解析仓库地址和 Issue/PR 编号,不会获取 Issue 的详细内容或 Body。
- 权限与安全:插件以当前 DSH 进程的权限运行,请确保从可信来源安装并检查许可证(MIT)。
- 适用场景:适用于需要在对话中快速引用特定 Issue 或 PR 的开发者或技术助手。
总结¶
该插件通过复用 gh CLI 的能力,解决了在 Web 界面中快速引用 GitHub 问题的痛点。更多细节与源码,可访问 GitHub 仓库。