🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

lilightspeed/dsh-seekbuddy

DeepSeek Harnessspec-screened扫描:中风险在 GitHub 查看 ↗
未验证

SeekBuddy · dsh-seekbuddy

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/23 · 已提供中文文档

DeepSeek Harness (DSH) 的桌面宠物对等客户端:/api + WebSocket 客户端、MCP 服务器、桌面外壳(Electron)。

综合分
27.7
GitHub 分
27.7
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add lilightspeed/dsh-seekbuddy
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
信任档位:仅索引本站尚未对其实装验证,仅收录元数据
是什么
dsh 原生插件 · chat
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
更新放缓:最近一次提交在 33 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

数据截至 2026/9/23(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-host-apiproxy
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
SeekBuddy · dsh-seekbuddy

SeekBuddy(仓库名 dsh-seekbuddy) 是 DeepSeek Harness(DSH)的桌面宠物对等客户端——
一只常驻桌面的 Live2D 宠物,既能看着你的 Agent 干活,也能随手指挥它。

它不是“只会动的挂件”:SeekBuddy 与 DSH Web GUI 平级、loopback 受信,可以实时控制并观察 DSH——
盯着会话状态、发消息、批审批,把它当作 Agent 的迷你常驻控制台。

项目亮点

1. 自研 Live2D 运行时,不止一张皮

- 自研的部分:Live2D 渲染与动画运行时(pet/live2d/)、可插拔动画器接口(pet/animator.ts)、
XState 语义状态机、动画仲裁/互斥/优先级系统(AnimationDirector)。状态机只输出语义状态
(idle/thinking/happy/sad/talking)——换动画后端只需加一个实现类,状态机/事件/UI 零改动。
- 非自制的部分:角色形象(立绘/模型资产)不是本仓库画的,版权归原素材作者(见文末许可)。

2. 缩小版的 DSH 客户端,能力对等、常驻桌面

- 复用 DSH 官方给浏览器用的 /api + WebSocket 协议(@deepseek-ai/dsh-host-apiproxy 与
@deepseek-ai/dsh-client-connection),能执行 Web GUI 能执行的绝大多数操作;
- 用极小的窗口承载完整控制面:对话气泡、输入条、会话雷达、审批/提问卡、设置面板;
- 常驻桌面 + 置顶 + 托盘管理——不必切到完整页面,就能盯着 Agent 干活、发消息、批审批。

演示

下方为 GIF 动图演示。

完整界面 / 对话 / 面板

完整界面 / 对话 / 面板 演示

窗口拖拽的物理反馈

窗口拖拽的物理反馈 演示

特性

- 常驻桌面:无边框透明 + 置顶 + 不入任务栏(托盘管理),开机自启可选。
- Live2D 角色:官方 Cubism SDK + 独立 canvas 自绘;WebGL2 不可用时回落到 PixiJS 几何“球宠”。
- 语义状态机:idle / thinking / happy / sad / talking,动画可插拔、可互斥与优先级打断。
- 对等操控 DSH:发消息、停止回合、列会话/历史、切换目标会话、审批/提问回执、新建会话。
- 设置面板可调:透明度、窗口尺寸(边缘拖拽)、极简模式、宠物位置/缩放/跟随手感、瞳孔/拖动反馈、
思考/睡眠表情阈值、开机自启。
- 配置持久化:%APPDATA%/SeekBuddy/config.json(原子写,损坏兜底默认值;改名自 DSH Pet 起会自动迁移旧配置)。
- 预留 Agent → 宠物接口:内置 MCP server(stdio),已暴露 pet.setExpression / pet.notify 等
工具桩;⚠️ “Agent 驱动宠物”的端到端功能尚未完成,当前仅接口存在、不作为特色宣传。

运行前提

⚠️ SeekBuddy 依赖 DeepSeek Harness,不是一个可独立运行的 app。它需要:

1. 完整的 DeepSeek Harness monorepo(或含 @deepseek-ai/dsh-host-apiproxy、
@deepseek-ai/dsh-client-connection 等 workspace 包的环境)——宠物用 workspace:^ 引用这些包,必须在该 workspace 内构建。
2. 一个正在运行的 DSH 实例,默认连 http://127.0.0.1:3080(loopback 受信,与 Web GUI 同级权限)。
3. 不要部署到非 loopback:宠物的权限来自 loopback 受信,连远端会失去信任边界。

下载预编译版本(Release)

不想从源码构建?可从 Releases 页面下载预编译的 Windows 安装包 / 绿色版,无需 Node.js / pnpm:

1. 先在本机启动一个 DSH 实例(宠物不是独立 app,必须连本地 127.0.0.1:3080):
npx @deepseek-ai/dsh web

2. 到 Releases 下载对应版本的 exe:
- SeekBuddy-Setup-.exe —— NSIS 安装包
- SeekBuddy-Portable-.exe —— 绿色免安装版(解压即运行)
3. 运行 SeekBuddy,它会自动连接 127.0.0.1:3080;首次可在设置面板改 baseUrl。

⚠️ 仅支持 Windows x64。macOS / Linux 暂无预编译包,需从源码在各自平台构建(见下文)。
⚠️ 自带的鲸鱼娘形象为 CC BY-NC-SA 4.0(非商业)。公开发布 = 非商业场景;若需商用,须剥离 assets/pet/live2d/ 与 design/(见文末许可)。

安装与运行

需要 Node.js ≥ 22.19(harness 根 engines 要求 ^22.19.0 || >=24.0.0)与 pnpm。

1. 先有一个 DeepSeek Harness workspace(提供 @deepseek-ai/* 包)
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness

2. 把本仓库作为独立子仓库放进 harness 的 apps/pet(作为 workspace 成员)
⚠️ 必须在上一步的 harness 根目录内执行,因为 harness 的 workspace 配置匹配 apps/*
git clone https://github.com/lilightspeed/dsh-seekbuddy.git apps/pet

3. 在 harness 根安装
pnpm install

4. 构建 workspace 依赖库(宠物依赖 dsh-host-apiproxy / dsh-client-connection 等的
构建产物,缺此步会报"找不到模块")
pnpm run build:lib

5. (首次从 GitHub clone 必须) 重建 Live2D Framework 运行时
vendor/live2d/Framework/dist 是编译产物、不进 git,必须本地重建,
否则 renderer 的 @live2d/framework 别名解析失败、dev/build 直接报错。
进 pet 目录用官方同版本 TypeScript 5.9.3 编译(详见 vendor/live2d/README.md):
cd apps/pet
pnpm --package=typescript@5.9.3 dlx tsc -p vendor/live2d/Framework/tsconfig.build.json
cd ..

6. 启动宠物要连接的 DSH 实例(默认 http://127.0.0.1:3080),二选一:
a) 直接用 dsh 发行包:        npx @deepseek-ai/dsh web
b) 用本 harness 源码运行:     pnpm run build && pnpm dsh web(完整构建含 web 前端)

7. 用 filter 操作宠物
pnpm --filter @deepseek-ai/dsh-seekbuddy run dev        # 开发(出窗口,热重载)
pnpm --filter @deepseek-ai/dsh-seekbuddy run typecheck  # 类型检查
pnpm --filter @deepseek-ai/dsh-seekbuddy run build      # 构建到 out/
pnpm --filter @deepseek-ai/dsh-seekbuddy run dist       # 打包安装版 / 绿色版

宠物用 workspace:^ 引用的两个包来自 harness 的 packages/,因此必须在 harness workspace 内构建,
无法脱离 harness 单独安装。

启动后宠物会尝试连接配置的 DSH 地址;首次使用可在设置面板里改 baseUrl。

使用

- 盯活:Agent 忙碌时宠物切换"思考"动作.
- 发消息:在宠物输入条打字,Enter 发送到目标会话(可切换/新建会话)。
- 极简模式:仅显示宠物,隐藏全部 UI。
- 托盘:显示/隐藏窗口、切换极简模式、退出。

ℹ️ "DSH 反向驱动宠物"(mcp__pet__*)目前仅预留接口,未做端到端功能,故不在此列为可用操作。

开发

⚠️ 首次从 GitHub clone 本仓库后,请先按上文「安装与运行」的步骤 5 重建 Live2D Framework dist(vendor/live2d/Framework/dist 不进 git,缺它 dev/build 会直接失败)。

在 harness workspace 根执行(宠物是 apps/pet,包名 @deepseek-ai/dsh-seekbuddy):

pnpm --filter @deepseek-ai/dsh-seekbuddy run dev          # electron-vite 开发
pnpm --filter @deepseek-ai/dsh-seekbuddy run build        # 构建到 out/
pnpm --filter @deepseek-ai/dsh-seekbuddy run typecheck    # tsc --noEmit(node + web)
pnpm --filter @deepseek-ai/dsh-seekbuddy run dist         # 打包(NSIS + portable)
pnpm --filter @deepseek-ai/dsh-seekbuddy run dist:dir     # 仅打包解包目录

国内镜像:根 .npmrc 走 npmmirror(electron_mirror / electron_builder_binaries_mirror),
electron 二进制缺失时按 AGENTS.md 的说明补装。

架构

┌───────────────────────────────────────────────┐
│  宠物进程 (Electron, 独立于 DSH 窗口)          │
│  ┌───────────┐  ┌───────────┐  ┌───────────┐  │
│  │ renderer  │  │  main     │  │  DSH 客户端│ │
│  │ Live2D    │  │ 窗口/托盘  │  │ 复用      │ │
│  │ + XState  │  │ MCP server│  │ apiproxy /│ │
│  │ + DOM UI  │  │ 通知/自启  │  │ connection│ │
│  └───────────┘  └───────────┘  └───────────┘  │
└───────────────┬───────────────────────────────┘
│ /api + WS (上行/下行)
│ MCP (反向: Agent→宠物)
▼
已运行的 DSH Host (127.0.0.1:3080)

- 运行依赖与外部包的复用关系、开发命令见 AGENTS.md。
- 架构 / 技术栈 / DSH 集成 / MCP 集成文档见 doc/。
- Live2D 集成与动画仲裁见 doc/08-live2d-integration.md 与
doc/09-animation-arbitration.md。
- 素材放置规则见 assets/pet/README.md。

目录结构

src/main/        主进程:窗口、托盘、DSH 连接、事件总线、MCP server/bridge、光标轮询
src/preload/     contextBridge 白名单(renderer 与主进程的唯一通道)
src/renderer/    表现层:Live2D + PixiJS 占位 + XState 状态机 + vanilla DOM 气泡/输入
src/shared/      纯类型与默认配置(主进程/渲染进程共享)
assets/pet/      宠物素材(Live2D 模型 / 动画 / 图标 / 音频占位;运行时打包)
design/live2d/   Live2D Cubism Editor 源工程(.cmo3 等;编辑源文件,不入安装包)
doc/             设计文档
vendor/live2d/   Live2D Framework 与 Core 编译产物(第三方)

许可(三方归属:自有源码 MIT · 依赖包 MIT · 素材 CC BY-NC-SA 4.0)

本仓库按三方归属区分(自有代码 / DeepSeek 的依赖包 / 借用或 AI 重绘的素材),请勿混淆。

① 宠物自有源码 —— MIT(归 lilightspeed)

- 渲染/动画运行时、状态机、窗口/交互逻辑、MCP 桥接等应用代码:apps/pet 源码为 lilightspeed 个人原创,
MIT 授权(见 LICENSE)。
- 这些代码基于但不包含 DeepSeek Harness(仅通过 workspace: 依赖引用,未拷贝其源码)。

② 依赖的 DeepSeek Harness 包 —— MIT(归 DeepSeek)

- @deepseek-ai/dsh-host-apiproxy、@deepseek-ai/dsh-client-connection 等依赖包归 DeepSeek,MIT 授权
(Copyright (c) 2026 DeepSeek)。本仓库仅将它们作为 workspace: 依赖引用,不主张其版权。
- Live2D SDK(Framework / Core):版权归 Live2D Inc.,遵循其 第三方许可。

③ 角色形象 / 立绘 / 模型 / 动画素材 —— CC BY-NC-SA 4.0

- 版权人(署名链):
- 上善无形(B 站) —— 鲸鱼娘角色形象原作
- ZipZipPipe(B 站 / Pixiv) —— 加入 DeepSeek 元素的女仆鲸鱼娘二次设计
- 本仓库的模型素材(正面视图、表情等)在上两人基础上由本项目 AI 重绘/再创作,属衍生作品;
依据 CC BY-NC-SA 4.0 的「相同方式共享」,衍生作品同样遵循 CC BY-NC-SA 4.0。
- 许可约束:署名(上善无形 & ZipZipPipe)、非商业(禁止商用)、相同方式共享(衍生必须同许可,不能改 MIT)。
- 因此这批素材不能按 MIT 授权;要再分发,请保持 CC BY-NC-SA 4.0 并保留上述署名。
- 详见 assets/pet/README.md 的 License 表与 design/live2d/README.md。

⚠️ 风险提示:CC BY-NC-SA 4.0 的「非商业」意味着使用/分发这套形象的场景不能商用。
若你想完全没有 CC 约束,请不要把 design/(含 .cmo3)与 assets/pet/live2d/ 的模型素材放进
本仓库,只发布纯代码与自研运行时。

⚠️ 若你仅需复用本项目的运行时、动画系统、窗口与交互逻辑,请自行替换角色素材并使用有权的模型。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群