dsh-getman-panel:DSH 侧边栏 API 测试面板

在 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 作为插件安装,需满足以下前置条件:

  1. DeepSeek Harness web 正常运行。
  2. dsh-better-sidebar 插件已安装且版本 >= 0.12.0。
  3. 本地开发环境需安装 Node.js >= 20 和 pnpm >= 10。

安装命令

发布版安装使用以下命令:

dsh plugin --profile web add dsh-getman-panel

安装完成后,重启 dsh web 并在浏览器侧边栏点击 + 菜单即可看到 Getman 选项。

如需参与开发或修改源码,需执行 link 方式挂载:

  1. 编辑 ~/.dsh/profiles/web/package.json,在 dependencies 中增加 "dsh-getman-panel": "file:/path/to/dsh-getman-panel",并在 dsh.profile.bundles 中增加 "dsh-getman-panel"。
  2. 在 profile 目录执行 pnpm install。
  3. 重启 dsh web(新增 bundle 或修改 host 路由需重启)。
  4. 浏览器执行硬刷新(Cmd/Ctrl + Shift + R)以加载客户端变更。

使用方法

Getman 的使用流程非常直观:

  1. 打开面板:在侧边栏点击 +,选择 Getman。
  2. 构建请求:选择请求方法,输入目标 URL。展开 Params、Headers 或 Body 区域进行编辑。粘贴带 ? 的 URL 会自动解析查询参数。
  3. 发送请求:点击 发送。发送过程中可随时点击 取消 中断请求。
  4. 查看响应:响应结果展示在下方,包含状态码、耗时、大小。响应体支持 JSON 格式化,鼠标悬停可点击右上角 ⧉ 图标复制。
  5. 管理历史:每次发送自动记录。点击历史条目可将请求回填到编辑区,支持删除单条或一键清空。

技术细节与注意事项

  • 代理路由:插件通过 /dsh-getman/api/proxy 路径进行代理转发,该路径由 host 半(Host-side)代码注册。
  • 数据存储:历史记录与草稿持久化在浏览器的 localStorage 中,Key 为 dsh-getman-panel:global,所有工作空间共享。
  • 开发调试:
    • 修改客户端代码后,必须进行浏览器硬刷新才能生效。
    • 修改 Host 代码或新增 bundle 后,必须重启 dsh web。

Getman 依赖 MIT 许可证,源码与目录可在 GitHub 查看。

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

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

小夜