Preface

DeepSeek Harness (dsh) treats models, tools, skills, sessions, and interfaces as replaceable plugins. The official repository describes this as “everything is a plugin”: developers can combine Agent capabilities at the configuration layer without modifying the Harness source code. In practical use, however, sessions, project files, web resources, Git workspaces, and Word/Excel outputs are often scattered across browser tabs, terminals, and external editors.

The community project deepseek-harness-desktop-app takes a different approach: instead of building a separate Agent runtime, it adds an Electron desktop shell on top of DSH’s existing execution chain, unifying sessions, projects, files, online research, plugins, and Office outputs into a single local application.

This article is organized based on the community directory page, the GitHub repository’s README / package.json / PRIVACY.md, and cross-checked against the official DeepSeek Harness repository: it covers what this project is, what it can do now, how to install it from the directory page, how to launch it as recommended by the repository, as well as its platform and functional boundaries. The community directory site has no official affiliation with DeepSeek / FangTian, do not treat it as an official app store.

What is it

deepseek-harness-desktop-app is an open-source project maintained by vibeinging. The community directory categorizes it under the “Sessions & Messaging” section, with an MIT license and JavaScript as the primary language. The product name is DeepSeek Harness Desktop App, the package name in the root package.json is dsh-desktop, version 0.0.1, with the entry point at electron/main.js. As of 2026-08-17, both the directory page and GitHub repository have 216 stars. The repository’s default branch is dev, with the last push on 2026-08-15.

The README has a clear positioning: it is a local AI work desktop built on top of DeepSeek Harness, organizing DSH Sessions, Agents, Tools, Skills, MCPs, and Profile Bundles, along with projects, files, web pages, Git Worktrees, Canvas, Sites, and Office outputs within a single desktop application.

It is neither an iframe of DSH Web nor a reimplemented Agent runtime. Electron launches the DSH Web Profile, continuing to use the same set of Sessions, Agents, Tools, Skills, MCPs, Settings, Profile Bundles, and Client Loader. The desktop shell is responsible for project management, file authorization, Browser Workspace, Git Worktree, Canvas, Sites, and Office outputs; capabilities that require model participation are still accessed through bound Sessions and DSH Tools. The current project uses DSH 0.1.0-rc.6.

Core Features

The README lists current capabilities in a feature table, which are grouped below by workflow. All content below is sourced directly from the repository README, not user experience reviews.

Chat, Permissions, and Trajectory

One project chat corresponds to one DSH Session. The chat side supports streaming responses, thought processes, tool calls, stopping, continuing, retrying, message branching, and restart recovery. On the model side, you can select Providers, models, and inference strength, and manage credential references, Session permissions, tool approvals, and model queries. All tools, skills, MCPs, Hooks, sub-Agents, and Workflows in the current Profile can be used directly.

The “Results & Evidence” panel on the right directly reads the bound Session’s session.history. User messages, request context, model outputs, tool calls, tool results, permission changes, and final answers are all included in a single replayable trajectory, and the repository explicitly states: no second execution center will be maintained separately.

When inputting, you can use @ to reference files, # to reference chats, and paste images and large text attachments. Project context includes application instructions, project instructions, authorized source code directories, write targets, and global or project memories.

Three-column Workbench and Project Files

The desktop shell features a three-column workbench, with collapsible left and right columns, global search, zoom shortcuts, and update checks. Settings cover language, network, notifications, terminal, and privacy.

On the project side, you can create projects and global or temporary chats, and support pinning, sorting, renaming, archiving, restoring, and deleting. The right workbench can attach tabs for Results & Evidence, Browser, Files, Outputs, and Sites. The project file tree, Agent working directory, current Diff, and line editing follow the current project’s permissions and active Worktree.

The coding workspace allows viewing Diffs, commenting and editing line by line, opening in an external editor, initiating AI Reviews, and safely undoing file modifications made by models. The Files panel lets you browse project files, tasks, and outputs, preview text, code, images, and Office content, and search by filename or body text.

Git Worktree, Browser, and Outputs

Git Worktree is used for isolated development: create independent branches and working directories for projects, with only one enabled at a time. When enabled, new chat Agents, DSH Sessions, Diffs, and line editing will use this Worktree, while the main checkout remains unchanged. Switching working directories will not migrate existing chats; you must switch back to the main checkout before deletion, and Git branches will be retained after the working directory is deleted. Non-Git directories, duplicate branches, out-of-bounds paths, and abnormal symbolic links will be rejected.

Browser Workspace provides multi-tab browsing, history, in-page find, zoom, download, print, developer tools, site permissions, web snapshots, and “Use this page”.

Canvas saves immutable versions, supports text editing, version comparison, precise inline suggestions, and conflict resolution. Sites use the same versioning capabilities and provide desktop, tablet, and mobile previews in isolated sandboxes. Office outputs cover the creation, viewing, targeted editing, and version retention of Markdown, DOCX, XLSX, PPTX, and PDF files.

Themes and Plugin Hub

Themes come from the @deepseek-ai/dsh-theme-pack Profile Bundle, with the default being professional-blue, and anime-blue as an alternative. The application also supports creating, importing, previewing, editing, exporting, and deleting local custom themes. Local themes can only modify safe colors and appearances, and cannot inject raw CSS, remote images, or modify the application name. Light/dark mode, background, and transparency can be adjusted individually.

The Plugin Hub is designed for regular users: install DSH Profile Bundles on the left “Plugins” page. Host Bundles (Tools, Skills, MCPs, Hooks, etc.) can enter the DSH runtime; Bundles containing third-party Client UIs will not currently enter the main window with Electron permissions, and this restriction does not apply to Client Bundles provided and reviewed with the application.

Installation and Activation

The installation command given on the community directory page is as follows, run it in the DeepSeek Harness terminal:

dsh plugin add github:vibeinging/deepseek-harness-desktop-app

For reproducible installations, the directory page requires pinning a commit hash:

dsh plugin add github:vibeinging/deepseek-harness-desktop-app#commit

Replace commit with the actual hash. The directory page also states: the plugin runs with the permissions of the current dsh process, and may execute code during installation; you should inspect the source code repository and license before installing.

The main path in the repository README does not treat this repository as an ordinary Web Profile plugin, but instead launches the desktop application locally. Local development requires Node.js 24 or higher (.node-version also specifies 24). After cloning, run:

npm install
npm run doctor
npm run dev

After switching Node.js major versions, CPU architectures, or operating systems, you need to run npm run setup again to re-prepare dependencies. To use the full three-column workbench, Browser Workspace, and Office outputs, you should start via the path specified in the README, do not assume that dsh plugin add will automatically pop up an Electron window.

Typical Usage

The steps below are sourced directly from the repository README, and you can verify the interface in the same order.

  1. Open the desktop application with npm run dev, create a project, then start a project chat. This chat will bind to a DSH Session.
  2. Add “Results & Evidence” to the right workbench. Send a message that triggers a tool call, and you should see user messages, model outputs, tool input and output, time consumption, Tokens, and final answers in the trajectory.
  3. When you need to modify code, first create and enable a Git Worktree in the project settings, then start a new chat. Existing chats will not be migrated to the new working directory.
  4. Use @ to reference project files, or preview text, code, images, and Office content in the Files panel. The project source code directory is read-only by default; if the Agent needs to write, you must explicitly grant authorization first.
  5. To install additional capabilities, open the left “Plugins” page: enter an npm package with an exact version, or a dsh-external repository address with a full commit; run the compatibility check first, and only install when the result is “Can Install” to write to the current Profile. After installation, you can view the source, version, loading order, and capabilities, and user-installed Bundles can be uninstalled.

Applicable Scenarios and Notes

It is suitable for users who are already using DeepSeek Harness and want to unify sessions, project files, web resources, and Office outputs into a single local window. It is also suitable for coding workflows that need Git Worktree to isolate experiments while keeping the main checkout unchanged. Data is saved locally in ~/.dsh by default, and you can use DSH_DATA_ROOT to change the root directory; PRIVACY.md explicitly states that opening the application or viewing history will not automatically upload projects and sessions.

The platform status is subject to the table in the README:
- macOS Apple Silicon: Verified for development and directory packages
- macOS Intel: Passed Rosetta check, still requires real machine testing on Intel
- Windows x64: Integrated into the build process, still requires real machine testing with installation packages
- Windows arm64: Not supported yet
- Linux: No desktop packaging configuration yet

Currently explicitly unsupported capabilities include: five-column task boards, independent scheduled task pages, Git graphs, stage/unstage panels, independent terminal pages; local Sites only provide previews and single-file exports, no deployment services, and public sharing currently only supports read-only viewing; there are also no mobile remote control, QR code pairing, public network tunneling, SSH, SFTP, or port forwarding. Sub-Agents can be executed and appear in chats and trajectories, but there is no complete independent management page yet.

Whether you use the directory page’s dsh plugin add method or start locally as per the README, installation and runtime will execute code on your local machine. Before installing, you should inspect the source code and MIT license, as well as the distribution restrictions of third-party dependencies and binaries in THIRD_PARTY_NOTICES.md. Do not describe the community directory or this desktop application as an official DeepSeek product.

Summary

deepseek-harness-desktop-app leaves DSH’s Session and plugin system intact, while adding project management, file authorization, browser workspace, Git Worktree, and Office outputs. The directory page provides installation commands following plugin conventions; to get the full workbench shown in the README, you need Node.js 24 and launch locally as per the repository instructions.

Community Directory: https://deepseek-harness-plugin.com/zh-CN/plugins/deepseek-harness-desktop-app/

GitHub: https://github.com/vibeinging/deepseek-harness-desktop-app