找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

6003

积分

0

好友

773

主题
发表于 前天 22:46 | 查看: 0| 回复: 0

WebUI 的痛点:浏览器不是给 Agent 常驻用的

DeepSeek Harness 发布有一段时间了。刚上线那会儿,不少人质疑它为什么用 WebUI 的方式——功能上确实没什么问题,但作为开发者入口,你得先本地启动服务,再通过浏览器访问。偶尔试一下无妨,可真把它当成每天都要用的 Agent 工具来使,就有点别扭了。

浏览器天生不擅长管理一堆需要长期运行的 Agent 会话。我日常打开 81 个标签页,分散在 10 个分类里,每次找回正在跑的任务都像在丛林里找路。

81个浏览器标签页分类统计结果

CLI 是另一种取舍。我习惯用 CLI 做编排,把任务串起来、脚本化、接进自己的工作流,确实顺手。但项目、会话、进程和日志全堆在终端里,开几个窗口还好,开多了以后,只能靠目录结构、命令历史和自己残存的记忆去区分每个任务。任务一旦中断,上下文还得手动恢复。

终端多窗口标签界面

所以我一直倾向于:要么用 CLI 做编排,要么直接用桌面端。浏览器适合浏览,不适合长期挂载 Agent。


发现 dsh-desktop:一个社区驱动的桌面端

顺着这个思路,我找到了 GitHub 项目 dsh-desktop,由 dataelement 社区开发,官网是 https://www.dshdesktop.com/

DSH Desktop 官网界面

我查了一下背后的团队,发现是 BISHENG 的人在做。他们主要深耕企业办公场景——知识库问答、文档审核、报告生成,以及把这些步骤串联起来的工作流。所以后来看到 DSH Desktop 开始做 PPT,我也就不意外了。

截图时官网显示累计安装包下载量已经达到 25 万次,GitHub 上有 5K Star,issues 和 PR 里讨论活跃,更新节奏相当密集。

dsh-desktop GitHub 仓库页面

他们跟进 DeepSeek Harness 的速度快得离谱。首个 Release v0.1.0 的发布时间是北京时间 8 月 13 日晚上 23 点 20 分——而 DeepSeek Harness 官方仓库当天才创建,DSH Desktop 当晚就放出了可下载版本。

需要说明的是,这是一个独立开源的社区项目,与 DeepSeek 官方没有直接关系。

市面上 Harness 的桌面端其实已经不少了,比如 Anywhere Labs、DSH Tauri Desktop。我把三款放在一起做了个对比:

三款 DeepSeek Harness 桌面端功能对比

为什么选 DSH Desktop?

我在意的第一点是新人上手门槛。DSH Desktop 不需要先装 Node,也不用自己执行 CLI 命令。首次配置时选服务商、填 API Key,模型列表会自动配好。对第一次接触 Harness 的人来说,能少折腾环境,直接开始第一项任务,这个体验很关键。

第二点是出问题之后能不能恢复。桌面端最怕升级后配置丢失,或者某个插件把应用搞挂。DSH Desktop 做了故障诊断、Safe Mode 和升级保留配置。再加上 BISHENG 团队长期维护 AI 开源项目的经验,至少从产品设计上看,它确实在认真对待这件事。

第三点是企业落地。它还有独立企业版,提供统一模型、身份与组织管理,配合 FDE 支持与定制交付。

基于这三点,我更愿意选 DSH Desktop。


上手实操:从下载到第一个会话

先去官网下载对应系统的安装包,顺手给项目一个 Star 支持一下。

DSH Desktop 下载页面

下载安装之后,打开 DSH Desktop,首次配置界面会提示你输入 API Key:

DSH Desktop API Key 配置界面

这一步直接去 DeepSeek 后台生成一个 API Key 填入即可。

DeepSeek API Key 管理界面

输入完成之后,界面基本上和 DeepSeek Harness WebUI 是一样的——因为它直接复用了 Harness 的界面。

DSH Desktop 主界面

打开一个 session 之后,你会发现多了 PPT 相关的内容。

DSH Desktop PPT 模板预览界面

好家伙,最近各种办公 Agent 都卷成什么样了,DSH Desktop 也在卷办公场景最爱做的 PPT 吗?

先来试一个。我选了个模板,让它做一份青甘大环线的自驾路线图,看看能出什么效果。一键直出的 PPT,审美和排版都挺能打。


插件市场与 Agent 预设:桌面端真正的加分项

DSH Desktop 把两个我很在意的入口放了进来。

一个是插件市场,用的是社区的 dsh-market。普通 Harness WebUI 也能装,但桌面端把入口集成好了,体验顺畅不少。这里面 DSH 的插件多到什么程度?你自己感受一下:

DSH Desktop 插件市场界面

另一个在 Agent 预设 这里,找到 Awesome preset 选项:

DSH Desktop Agent 预设界面

点进去之后会打开 Preset 广场。你可以理解成一个 Agent 市集或者工作坊——别人把适合某个任务的配置整理好了,放在这里分享给大家用。图像制作、科研证据整理、视频制作,都有对应的配方。

DSH Desktop 工作配方 Preset 广场

这里面东西可太多了,多到我看不过来。我找了一个动效制作模式的 Preset,看看它能做什么:

动效制作模式 Preset 详情页

复制提示词之后,放进 DSH Desktop 里:

读取并导入广场 Preset 对话界面

然后我让 DeepSeek 做了一个动效演示。为了这个任务,它竟然开了 25 个 subagent……

DSH Desktop 25 个子代理任务界面

这些 Preset 说白了就是按具体任务配好的一套 Agent 工作配置。不满意的话,你也可以改出一份适合自己的 Preset,再发布到广场上。

发布提示词已复制弹窗


技术架构拆解:Electron 宿主 + Harness Runtime

出于兴趣,我按项目的架构文档和源码画了一张图,看起来直观一些:

DSH Desktop 技术架构图:Electron 桌面宿主与 DeepSeek Harness 集成

先看上层,Electron 分成了两个进程。左边的 Renderer 负责渲染 Harness WebUI,右边的 Main 负责创建窗口、启动 Harness,以及更新、配置修复等桌面能力。

这两个进程之间通过 Preload 和 IPC 通信。比如你点开系统目录选择器,或者要求重启 Harness,WebUI 会通过这条通道把操作交给主进程。Renderer 本身没有直接使用 Node.js 的权限。

聊天和任务执行走的是另一条路。 WebUI 通过本地 HTTP/RPC 调用下面的 Harness 服务,再把流式结果渲染出来。它和上面那条桌面 IPC 通道是分开的。

下面的 Harness Runtime 也是独立进程。macOS 上用 Electron UtilityProcess,Windows 上用安装包自带的 Node.js 启动。主进程负责管理它的生命周期,Harness 自己只监听 127.0.0.1 的随机端口。所以前面说不用手动启动,就是这一步被主进程接管了——后台跑的还是 DSH 的本地服务,只是不用自己操心了。

DeepSeek Harness Runtime 里面,就是 Cordis 的插件组合。Agent Loop 负责让任务持续往下执行,Tool Registry 管工具调用和权限检查,Session Service 管会话与事件日志,模型适配器负责向 DeepSeek 或其他服务商发请求、接收响应。

这些能力通过 Cordis 的服务和事件协作。下面的 Profile、Preset 和补丁配置,决定这次运行要加载哪些插件、给 Agent 配什么能力。

DSH Desktop 自己增加的东西也放在了 Harness Runtime 中。比如 Preset 导入导出、插件市场安装入口,还有前面用到的 PPT 插件。PPT 的界面入口和生成、导出能力各有对应模块,最后由工具生成可以继续编辑的 PPTX 文件。

架构图底部是本地数据。项目文件在你选的 Workspace 里,会话、模型配置和 Profile 放在应用数据目录,启动诊断则写进 harness.log。安装目录和用户数据分开,升级应用时就能保留原来的配置与会话。

右边是外部服务。模型 API 和应用更新各走各的接口。手机接入额外经过 Mobile Bridge,需要桌面端批准配对;选了远程访问才会用到临时隧道,Harness 本身依然只监听本地回环地址。

看完这张图,DSH Desktop 的架构逻辑就很清晰了:Harness 的 Agent Runtime 和 WebUI 继续沿用,但窗口、进程、更新和配置这些事,交给桌面宿主来做。

对我这种已经开了 81 个浏览器标签的人来说,至少不用再去打开第 82 个了。

整个研究下来,我觉得这个项目值得一个 Star。

DSH Desktop GitHub: https://github.com/dataelement/dsh-desktop

DSH Desktop 官网: https://www.dshdesktop.com/

如果你对这类 AI 工具和技术架构感兴趣,欢迎来 云栈社区 一起交流。




上一篇:Vibe Coding还是工程化?2026程序员的分水岭抉择
下一篇:TAMCPP C++开源教程下一步怎么走?嵌入式、CMake与系统编程规划
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-9-13 17:38 , Processed in 3.736273 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表