OrcGo@Cong2026.09.17
SeekDesk-基于 DeepSeek Harness 的开源 AI Coding 工作台SeekDesk-基于 DeepSeek Harness 的开源 AI Coding 工作台
2026-09-07 · 7 min read

SeekDesk-基于 DeepSeek Harness 的开源 AI Coding 工作台

An open-source AI Coding workbench built on DeepSeek Harness — chat with agents, edit files, manage Git, and run terminals

AI Coding WorkspaceDesktop ClientAgent HarnessOpen Source

SeekDesk

基于 DeepSeek Harness 的开源 AI Coding 工作台

在浏览器或桌面 App 中与 Agent 对话,并在同一界面完成文件编辑、Git、终端与网页预览——无需在 IDE、终端与浏览器之间来回切换。


AI Coding Skills

本仓库的工具箱五段(资源管理器 → Git → 终端 → 浏览器 → 桌面壳)是一次完整的 DeepSeek Harness 二开实践,整个迭代过程,依然是按照可控 AI Coding 的节奏来走:需求对齐、规划拆解、分步实现、排错修复、架构维护。

从领域词汇、 PRD、Issue 切片到 Host RPC 与 Client 插件,全程在 AI Coding Skills下与 Agent 协作完成——而非「纯 vibe coding」式改代码。每个模块单独规划、单独落地,确保项目功能不断扩展的同时,整体结构依然保持清晰。

image04 1

能力概览

Agent 平台(继承 DeepSeek Harness)

能力 说明
多会话 Agent 对话 流式回复、上下文与 Token 用量可见
Workspace 绑定本地项目目录,Agent 在该目录内读写与执行
工具调用 文件、Shell、Web 搜索、子 Agent、Todo、Plan、浏览器自动化等
权限与审批 敏感操作可配置确认策略
模型配置 DeepSeek API;设置页支持 OpenAI 兼容端点
Cordis 插件架构 可按需扩展 Host / Client 能力

本仓库定制:工具箱五段

Harness 原右侧 详情栏(details)在本 fork 中统一称为 工具箱。会话头 图标 +「工具箱」 胶囊按钮打开/收起,面板可拖宽。

模块 要点
资源管理器 文件编辑器 Monaco 多 Tab、Markdown 预览/源码、语法高亮、LSP 诊断、显式保存、Git 行尾徽章、拖拽移动
Git 面板 源代码管理 变更列表与提交历史图、差异预览、按块暂存/丢弃、提交与推送、Git 操作守卫
终端 人类终端 多 Tab 交互式 Shell(xterm),与 Agent terminal_* 工具完全分离
浏览器 内嵌浏览器 多 Tab 导航;Web 路径为有头 Chromium 窗口;桌面 App 为面板内 WebView;Agent browser_* 与人类共用实例
工具详情 Tool 输出 查看 Agent 工具调用详情;点击消息流工具行可跳转

对话区增强

  • Mermaid 图表渲染与缩放预览
  • Markdown / 图片 ZoomPan 浏览
  • 选区 Add to Chat、已发送消息中的文件路径可打开编辑器

两种交付方式(均从源码启动)

方式 启动命令 说明
Web pnpm dsh web 浏览器打开终端输出的 loopback 地址
桌面 App pnpm run dev:desktoppnpm dsh desktop Electron 壳 + 同一 SPA;日常开发推荐 dev:desktop(Vite HMR)

桌面与 Web 功能对等(同一 SPA + 同一 Host 能力);桌面通过 Electron IPC 连接本机 Host,不占用 loopback HTTP 端口。


安装与运行

前置

  • Node.js ^22.19>=24
  • pnpm 11.7.0(Corepack)
  • Git(Git 面板需要,须在 PATH 中)
  • 模型 API Key(应用内 设置 → 模型 配置)

克隆与构建

git clone https://github.com/deepseek-ai/deepseek-harness.git
cd my-deepseek-harness
git checkout custom/main

corepack enable
pnpm install
pnpm run build

启动 Web(浏览器交付)

pnpm dsh web

浏览器打开终端输出的地址(通常为 http://127.0.0.1:3080)。改动了 Client 插件 UI 后请硬刷新(Cmd/Ctrl+Shift+R)。

启动桌面 App

pnpm run dev:desktop    # 推荐:Vite HMR + Electron 
pnpm dsh desktop        # 使用已构建产物启动

更新本地副本

git pull && pnpm install && pnpm run build
若只改了 Client 插件 UI,bundle 对应包后重启 / 硬刷新
现象 处理
官方 npx @deepseek-ai/dsh web 无定制功能 须从本仓库构建并 pnpm dsh web
看不到「工具箱」或五段 Tab 确认在 custom/main 且已 pnpm run build;硬刷新
Client UI 改动不生效 pnpm --filter <包名> run bundle 后重启 web 或硬刷新
资源管理器:文件过大 / 目录「…」 单文件约 5 MB;单层目录 listing 上限 1000 条

基本使用

  1. 配置模型 — 设置 → 模型,填入 API Key(详见 模型提供方指南)。
  2. 选择 Workspace — 添加并选中项目根目录;文件树、Git、终端、浏览器均绑定该 Workspace。
  3. 与 Agent 协作 — 在会话中描述任务(建议配合 AI Coding Skills,见上文 AI Coding Skills);Agent 可通过工具读写仓库、执行命令、浏览网页。
  4. 人类并行操作 — 工具箱内自行编辑文件(⌘S / Ctrl+S 保存)、管理 Git、开 Shell、预览页面。
  5. 查看工具输出 — 工具箱 工具详情,或点击消息流中的工具行。

守卫规则:存在未保存的编辑器 Tab 时,切换 Session 或退出桌面 App 会提示保存/丢弃;运行中的终端或浏览器 Tab 不会阻断切换。


架构简述

交付层
  ├─ 桌面 App(Electron · desktop profile · IPC)
  └─ Web(dsh web · web profile · HTTP + SSE/WebSocket)

Host(Node)
  ├─ Agent 运行时(会话 · 工具 · LLM · 子 Agent …)
  └─ apiproxy RPC(文件 · Git · 终端 · Playwright 浏览器 · LSP …)

Web Client(浏览器 / Electron Renderer)
  ├─ 对话区(ui-conversation)
  └─ 工具箱
       ├─ ui-file-editor   资源管理器
       ├─ ui-git           Git 面板
       ├─ ui-terminal      人类终端
       ├─ ui-browser       浏览器
       └─ ui-tool          工具详情

扩展与上游架构见 docs/architecture.zh.md(英文)与 AGENTS.md


开发与构建

pnpm install
pnpm run build              # Host + Web 前端
pnpm dsh web                # Web 交付
pnpm run dev:desktop        # 桌面开发(HMR)
pnpm run test:gui           # Client / Host GUI 单元测试

仅改 Client 插件 UI 时,需先 bundle 对应包再重启或硬刷新,例如:

pnpm --filter @deepseek-ai/dsh-client-ui-conversation run bundle
pnpm --filter @deepseek-ai/dsh-client-ui-file-editor run bundle

集成线与上游差异见 CUSTOM.md。领域词汇见 CONTEXT.md。继续二开或修 bug 时,沿用 AI Coding Skills 与 Skills,在 pnpm dsh webpnpm run dev:desktop 会话中迭代。


已知限制

  • 基于 DeepSeek Harness 的 fork;合并上游需手动对齐(集成分支 custom/main)。
  • 文件编辑器无自动保存;单文件约 5 MB 上限;单层目录 listing 上限 1000 条(超出显示 )。
  • Linux 桌面壳不在 V5 范围;Linux 上可从源码 pnpm dsh web 使用 Web 交付。
  • 桌面壳 V5 不含自动更新、多窗口、远程 Host 一体启动等能力。
  • 官方 npx @deepseek-ai/dsh web 不包含本仓库工具箱定制,须从本仓库构建运行。

文档

文档 内容
CUSTOM.md Fork 定制台账与变更记录
CONTEXT.md 领域语言(工具箱、绑定 Workspace 等)
docs/prd/ 各模块产品规格(V1–V5)
docs/adr/ 架构决策记录
DeepSeek Harness 文档 上游平台与插件开发

许可证

MIT · 基于 DeepSeek Harness · 第三方组件见 THIRD_PARTY_NOTICES.md