lycheelink/dsh-workbench: DeepSeek Harness 企业级 Agent 工作台

前言

DeepSeek Harness (DSH) 采用“一切皆插件”的架构,Web UI 中的交互与工作流编排通常需要通过插件扩展。对于需要管理多个 Agent 场景、处理复杂参数配置以及监控执行状态的开发者来说,原生界面往往缺乏系统化的工作台能力。lycheelink/dsh-workbench 插件为 DSH Web UI 提供了一个基于场景卡片和动态表单的集成化入口,旨在解决场景入口分散、参数采集繁琐和会话管理割裂的问题。

它是什么

@lycheelink/dsh-workbench 是由 lycheelink 维护的 DSH Web UI 插件,定位为企业级 Agent 工作台。它不替换、不禁用任何官方插件,而是作为增量组件存在。

该插件通过场景卡片网格提供入口,配合动态表单收集参数,并利用宿主的 sessionController 真实创建 Agent 会话。它解决了在 Web 界面中快速启动定制化任务、管理参数校验以及监控会话状态的痛点。

核心功能

插件提供了一套完整的前后端交互能力:

  1. 场景卡片网格:提供响应式的场景入口,支持按类别筛选和全局搜索。
  2. 动态表单与条件字段:参数收集面板支持字段展开与折叠。通过表达式(如 key == 'value')动态显示或隐藏子表单,逻辑与宿主共享单一来源。
  3. 会话真实启动:点击“启动”后,通过宿主的 sessionController 创建真实的 Agent 会话,并将组装好的 Prompt 注入会话。Agent 会话出现在对话列表中并开始执行。
  4. 服务器路径校验:文件字段仅接受服务端绝对路径(如 /mnt/share_space)。插件在启动时会校验路径是否存在。
  5. 控制室:提供实时会话状态监控(创建/运行/等待决策/完成/失败)。支持对会话记录进行管理,失败或完成的会话可直接删除;运行中的会话需两步确认删除(仅删除工作台记录,不操作真实会话)。
  6. 侧边栏与全页视图:在左侧侧边栏新增“工作台”菜单项。点击后工作台以无边框全页视图覆盖中间对话列,点击“启动”成功后会自动关闭全页视图并跳转至新会话的对话视图。

安装与启用

该插件仅支持 Web profile。安装前请确保已安装 DSH 及其依赖。

dsh plugin --profile web add @lycheelink/dsh-workbench

安装成功后,左侧侧边栏将出现“工作台”入口。由于该插件依赖宿主的 typert 机制来注册端点,确保宿主已正确加载相关 Artifact。

典型用法

使用该工作台执行任务通常包含以下步骤:

  1. 选择场景:在场景卡片网格中点击目标场景卡片(如“开箱寻优”或“Profiling 采集”)。
  2. 填写参数:在滑出的参数收集面板中填写必要参数。如果启用了条件逻辑,填写特定字段会自动展开子表单。
  3. 上传文件:在文件字段中输入服务端绝对路径。系统会在启动时校验文件是否存在。
  4. 启动会话:点击“启动”按钮。
    • 系统组装 Prompt 并执行校验。
    • 若成功,工作台关闭,视图切换至新创建的对话窗口,Agent 开始执行任务。
    • 若未成功,控制室会显示状态说明。

适用场景与注意

适用人群:使用 DSH Web UI 进行 Agent 开发与运维的工程师,需要频繁启动特定场景、处理复杂参数或监控会话状态的团队。

重要注意事项:

  • 依赖项:插件依赖宿主的 typert artifact (./typert)。如果缺少该文件,宿主不会暴露任何 workbench/* 端点,插件将无法工作。
  • Profile 限制:当前版本仅支持 Web profile。
  • Agent 启动模式:默认情况下,“启动”会真实创建 Agent 会话。若需要仅记录日志而不创建真实会话,可配置 spawnAgent: false。
  • 阶段边界:目前插件仅将卡片配置的 agentPreset 挂载,卡片级的 agentConfig.skills 尚未透传给预设组合(preset 本身可带 skills)。

结语

dsh-workbench 通过插件化方式为 DSH Web UI 增加了结构化工作台能力。它提供了从场景入口、参数采集到会话创建与监控的完整闭环。更多细节与源码可访问:

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

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

小夜