Reading guide

Nonead DSH Desktop User Manual

This is an operations manual for everyday users. It does not assume you can write code, and it does not require Node.js, pnpm, or any development tool installed beforehand — the installer bundles the whole runtime, so it works as soon as you install it.

Audience: users meeting this product for the first time
Reading order: read the sections in order, or jump straight to the one you need

In this manual

The thirteen sections are ordered as "set it up → use it → when things go wrong". If you only want to fix one specific problem, jump straight to Section 12.

1. What this is

In one sentence: it puts DeepSeek Harness's agent capabilities inside a desktop application — double-click the icon and start a conversation, letting it read and write files, run commands, and call tools.

The product consists of three layers. You only ever interact with the third one; the first two run automatically in the background.

Desktop shell Window · tray · updates · terminal · profiles Host (background service) Loads plugins, runs tools, manages sessions and files Web UI (what you see in the window) Chat · input box · sidebar · settings
Figure 1 The product is made of three layers; everyday actions happen on the top layer.
How does it differ from the web version? The web version can only chat. The desktop version hands the whole computer to it: read your files, run commands, install plugins, connect to your working directories — all of it happens on your machine, and data never leaves it.

2. Installation

Grab the package for your platform from the product download page and double-click it. The installer already bundles Electron, Node.js, pnpm, and a pinned version of the DSH runtime, so you don't need to install anything else. This version bundles Electron 44.0.0, Node.js 24.21.0, pnpm 11.8.0, Python 3.12.14, and DSH runtime 0.2.2-rc.1.

PlatformDownloadHow to install
Windows x64.exe installerRun it and follow the prompts to finish
macOS (Universal: Intel / Apple silicon).dmg disk imageOpen it and drag the icon into Applications
Linux x64.AppImageFirst grant the execute bit with chmod +x, then run it by double-click or from the command line
Table 1 Installation on the three platforms. If Linux reports missing FUSE, run it with --appimage-extract-and-run instead.

Note: Windows ARM64 is currently an experimental build — the bundled Python / Node runtimes are still x64 payloads and it has not been fully validated on ARM devices. Everyday users should use the x64 build.

3. First launch

The first startup prepares a default configuration automatically and starts the interface service locally. You will see a wizard first:

  1. Welcome page — introduces the product's basic positioning.
  2. Plugin marketplace — choose whether to enable the community plugin marketplace. Choosing "Do not enable" is remembered too, so it will not ask you again.
  3. Remote control — whether phones and other devices may connect to this desktop instance.
  4. Computer Use — whether it may operate your mouse and keyboard.
  5. Recovery mode — introduces how the "safety net" works when something breaks.
Note: closing the window is not quitting. Clicking the close button in the top-right corner sends the app to the system tray and it keeps running. To quit for real, right-click the tray icon and choose Quit.

4. Main interface at a glance

The main window is simple: from top to bottom and left to right there are only four areas.

① Desktop frame (36 px, drag to move) ② Sidebar Session 1 Session 2 Session 3 Workspace · files · plugins ③ Conversation area You: convert every image in this folder to webp Assistant: found 12 images. Convert all of them? (Write operations ask for your confirmation first) ④ Input box Describe your request here; press Enter to send
Figure 2 The four areas of the main interface: ① desktop frame ② sidebar ③ conversation area ④ input box.
AreaWhat it does
Desktop frameThe 36 px dark bar along the top. Drag the window from the empty space; click the icons directly.
SidebarSession list, workspace and file entry points, plugin entry points. Switch sessions any time; all history stays.
Conversation areaWhat you type, its replies, and tool-execution results all appear here.
Input boxWhere you describe the request. The more specific it is, the closer the result is to what you wanted.
Table 2 What each of the four areas handles.

5. Starting your first conversation

  1. In the input box, state clearly what you want, e.g. "convert every png in this directory to webp, keeping the original size".
  2. Press Enter to send. It understands first, then plans, and calls tools when needed.
  3. For risky operations such as writing, deleting, or running commands, a native confirmation dialog appears and you approve or reject it.
  4. Results appear in the conversation; if you are not satisfied, just say "change it to ..." — no need to start over.
A tip for writing requests: spell out "what to act on", "what the bar is", and "what must not be touched" — far more effective than only saying what to do. It cannot see the context you did not say out loud.

6. Tray menu

Most system-level operations live in the tray icon. Right-click the tray icon and you will see these entry points:

Open Settings Check for Updates Switch Profile Recovery Assistant Open DSH Terminal Quit
Figure 3 The six tray entries; the three most common are Open Settings, Check for Updates, and Recovery Assistant.

7. Settings page

The settings page is divided into five sections by function, from left to right:

General Profile Tools Recovery Permissions
Figure 4 The five sections of the settings page.
SectionWhat you can do here
GeneralStart at login, interface language, local web port, and the update card (including "Release notes" and manual checks).
ProfileView and create profiles, switch the Profile in use.
ToolsOpen the DSH terminal, restart normally, restart in recovery mode.
RecoveryList healthy snapshots and roll back; each rollback first snapshots the current state.
PermissionsManage system permissions such as Computer Use.
Table 3 The main purpose of each of the five sections.
Small tip: if you pin a fixed local web port, settings saved inside the interface (such as some plugins' preferences) can only be read again after a restart. Unless you have a special need, keep the default and let the system assign a port.

8. Profiles: several configurations

A Profile can be understood as "an independent configuration set": different plugin combinations, different patches, different settings. You can keep several ready at once and switch between them by scenario without interfering with each other.

Current Profile e.g. desktop Tray → Switch Profile Pick a profile Orderly restart A few seconds Startup failed? Falls back automatically Or roll back manually with the tray's Recovery Assistant
Figure 5 Switching a Profile: pick → orderly restart → automatic fallback on failure.

Remember three things:

9. Plugins and the plugin marketplace

A plugin adds capability to this assistant: add models, add tools, add interface panels, add automation flows. Official plugins can be installed directly, and several plugins can be active at the same time.

Two ways to install:

Restart after installing. After a plugin change the application must restart, or the new plugin will not load. If nothing seems to happen after installing, first confirm the command applied to the Profile you are actually using, then restart once more.

10. How the 35 plugins I installed are used

This section goes through the 35 plugins actually installed in your current desktop profile one by one; names and versions were measured from this machine's profile (snapshot date 2026-11-08). They are grouped into seven categories by purpose: each category opens with a one-line overview, then each plugin is explained in terms of what it does and when you would reach for it.

35 installed plugins · grouped by purpose Memory 5 · auto-recall, project memory, context insight, input history, rewind Skills 8 · skills manager/market/hub, engineering skills, expert teams, PPT Interface 8 · auto-continue, better sidebar, task board, Git graph, inline UI, voice alerts, costs, archive Collab & dev 8 · subagents, Claude Code / Codex, code review, plugin discovery, market, MCP Robots 2 · UR real-robot control, UR offline simulation (built by NONEAD) Media 3 · image-gen workbench, React video workbench, Univer office preview
Figure 6 The seven plugin categories by purpose (system maintenance is one plugin — configuration backup, entry 35 at the end).

They are not isolated from one another; in practice they form a chain from "remembering context" to "delivering results":

① Remember Memory · context ② Pick skills Skills · expert teams ③ Do the work Subagents · robots ④ Deliver Docs · video · art ⑤ Review Review · costs You don't have to wire this chain yourself: plugins hook together automatically through DSH service injection.
Figure 7 The typical collaboration chain between plugins.
First, remember three general operations: install with dsh plugin add <plugin-name>, uninstall with remove, upgrade with update. Every change requires restarting the application. Commands apply to the currently active Profile by default; add --profile <name> to target a specific one.

Category 1 · Memory and context (5)

This category solves the problem of "it can't remember what was said last time".

1Auto memory@a9i5k4/dsh-auto-memory3.3.17

Proactive associative memory: relevant memories are recalled automatically before the model speaks, organized across three layers on its own, and repeated workflows can be distilled into skills.

How to use: no extra steps — it decides what to recall by itself; to have it tidy old memories, say "organize my recent experience".

2Project memory@yolk_vat-y/dsh-project-memory0.6.11

Indexes documents (PDF / Markdown / plain text) and code symbols into a per-workspace, searchable library; recall comes with source citations.

How to use: when you enter a project, have it index once; afterwards ask "how is XX implemented in this project" and it answers with file citations.

3Context insightdsh-context0.82.1

Shows what the current context is made of and how much it takes, and trims it accordingly so conversations do not get slower as they grow.

How to use: when the conversation slows down or the context is reported as too long, open its panel to see the composition and drop history you no longer need.

4Input historydsh-nonead-prompt-recall0.8.7

With an empty input box, press ↑ to bring back the previous input, and press it again to walk further back; press ↓ to come forward. History is stored per workspace and survives restarts. Next to the model selector there is also a rewrite button: it rewrites your half-written prompt with the current model, and @ references are preserved.

How to use: to reuse that long prompt from a moment ago without retyping it, press ↑ in an empty input box.

5Conversation rewinddsh-nonead-prompt-rewind0.5.4

Rewinds the conversation to an earlier turn inside the window, and can restore the workspace files at the same time.

How to use: use it when you went in the wrong direction and want to "go back three steps and start again" — cheaper than opening a new session.

Category 2 · Skills and experts (8)

This category solves "when a concrete task comes up, how to make it follow a professional playbook".

6Skills manager@michengai/dsh-skills-manager1.2.35

Loads and safely manages local Agent Skills in one place, so skills from several sources do not overwrite each other.

How to use: after installing a new skill, confirm here that it loaded correctly and its origin is clear, then decide which ones to enable.

7Skills market@weibaohui/skills-management0.9.3

One page that manages the skills of every coding assistant on this machine (Claude, Codex, ZCode, and more than ten others), with one-click consolidation into DSH; includes a marketplace of 6600+ skills, sortable by injection cost.

How to use: search here first when you want an off-the-shelf skill for a capability; check its token cost before installing, and don't install too many at once.

8Skills hub@linxin666/dsh-client-ui-skill-explorer0.4.15

Browse loaded skills by origin (built-in / project / user / custom / runtime); enable, disable, create, and delete them.

How to use: when you suspect a skill is not taking effect, check here which layer it belongs to and whether it was disabled.

9Engineering skill set@wenaixi/dsh-superpower8.0.0

Packages 15 obra/superpowers engineering skills (requirement clarification, TDD, systematic debugging, code review, and more) with bilingual descriptions, individually switchable.

How to use: let development tasks go through this flow first; switch off individual skills you don't need to reduce interference.

10Expert teams@michengai/dsh-agency-agents1.2.26

331 summonable specialist agents across 22 divisions; summon a single expert on demand or assemble a team.

How to use: for a question that needs a specialist's eye, just say "have XX expert look at this"; complex tasks can be handled by a parallel team.

11GitHub workflow skillsdsh-github-skills0.2.1

Ports the GitHub workflow semantics from OpenAI Codex: reviewing PRs, handling review comments, checking CI, publishing, and more.

How to use: inside a repository, say "look at the review comments on this PR" or "why did CI fail", and it follows the matching workflow.

12Architecture diagrams@tt-a1i/archify-dsh1.0.0

Turns requirements or code structure into interactive architecture, workflow, sequence, and lifecycle diagrams as standalone HTML, with dark and light themes and export.

How to use: say "draw the architecture of this system" — it reads the code before drawing, rather than inventing a layout.

13PPT masterdsh-ppt-master6.1.0

An AI-driven presentation workflow: generate editable PPTX decks, reconstruct page visuals, and fill native templates.

How to use: give it a topic and key points, or have it build from an existing document; to change the layout say "switch to a native template".

Category 3 · Interface and efficiency (8)

This category improves "the interface you see every day" and "how much it costs".

14Better sidebardsh-better-sidebar0.30.1

Pulls the file tree, editor, changes, tasks, and side chats into one column, isolated per session. It also exposes a service so other plugins can mount their own tabs and file viewers into this sidebar — the "right-hand panel keeps reporting 4xx" case in Section 12 is a plugin that never got that service.

How to use: while editing code you don't need to switch windows back and forth — view files, see diffs, and open a side chat directly on the right.

15Task board@linxin666/dsh-client-ui-task-board0.4.15

A Host-authoritative task board: cards can actually execute, with cron scheduling and cross-platform sleep protection.

How to use: break the work into cards on the board and let it run them in order or on schedule.

16Git graph@linxin666/dsh-client-ui-git-graph0.4.14

A branch picker plus a Git relationship graph for empty sessions, with real Host-side git operations and safety checks.

How to use: before starting a new session, read the branch relationships on the graph so you don't start work on the wrong branch.

17Inline interactive UI@changfenhuang/dsh-genui0.15.0

Renders interactive components directly in replies: layout, charts, function plots, forms, quizzes, and more.

How to use: when you want a chart or a comparison, just say "show me as a table/chart" and it renders as an operable panel.

18Voice notificationsdsh-notify-say0.5.3

Desktop notifications are actually spoken aloud: Windows built-in TTS works out of the box (nothing to download), VOICEVOX voices are optional, and it can fall back to system sounds. It also waits until every subagent you dispatched has finished before announcing "this round is done".

How to use: let a long task run while you do something else; it makes a sound when it completes. You can switch voices in Settings.

19Cost meterdsh-cost-meter1.9.58

Tracks this session's and today's cost, with a built-in catalogue of 170+ model prices matched automatically; it also queries subscription quotas across 16 Coding Plans, and custom-provider balances (any HTTP endpoint), shown as progress bars.

How to use: glance at today's spend before a long task; compare unit prices when switching models so you don't use an expensive model for cheap work.

20Session archive@michengai/dsh-archive-manager1.2.8

Archive, restore, pin, and permanently delete sessions, and diagnose corrupted session logs.

How to use: archive the old ones when the session list gets too long; if a session won't open, diagnose its log with this first.

21Auto-continuedsh-client-auto-continue0.17.4

When a session stops for a reason that isn't yours — a network error, for example — it sends a continuation prompt on your behalf and picks the conversation back up; the engine runs inside the host process, so it keeps working even after you close the browser tab. By default it only recovers from interruptions; the autonomous loop that keeps going after a task finishes has to be turned on explicitly in Settings.

How to use: turn it on when your network is unreliable or when you're running a long task, and the conversation is already picked up when you come back; if you want it to keep working round after round on its own, enable the autonomous loop separately.

Category 4 · Collaboration and development (8)

This category turns "one assistant" into "one team".

22Subagent delegation@deepseek-ai/dsh-tool-subagent0.2.2-rc.1

A model-facing subagent delegation tool: hand a self-contained subtask to another agent to do, without consuming the current conversation's context.

How to use: when a task splits into pieces that don't depend on each other, have it dispatch them in parallel and keep only the conclusions in the main conversation.

23Claude Code subagent@deepseek-ai/dsh-subagent-claude-code0.2.2-rc.1

A one-shot Claude Code subagent built on the official Agent SDK: give it a task and collect the result once it finishes.

How to use: name it explicitly when you need Claude Code's capabilities (large-scale code changes, running tests).

24Codex subagent@deepseek-ai/dsh-subagent-codex0.2.2-rc.1

A one-shot Codex subagent built on the official app-server protocol.

How to use: use it when you want a piece of implementation completed independently by Codex; it can coexist with the Claude Code subagent.

25Code review@michengai/dsh-code-review1.0.8

Codex-style code review: an independent native sub-agent, selectable review scope, reports in English or Chinese.

How to use: before committing, ask "review my changes this time" — it checks by scope across the diff, related code, and uncommitted files.

26Repository watcher agentdsh-superagent0.1.0

A proactive agent for a single GitHub repository: watches GitHub (optionally Feishu/Lark) and evaluates incoming requests against rules.

How to use: enable it when you want it to watch issues / PRs for you; first confirm which repository it applies to and its trigger rules.

27Plugin discoverydsh-find-plugins0.3.0

Finds plugins across five community catalogues plus live GitHub / npm search, ranked by relevance × trust × freshness × popularity.

How to use: before adding a capability, ask "is there a plugin for this" — more accurate than rummaging through the marketplace directly.

28Plugin marketplacedshmarket1.73.14

A visual plugin marketplace inside the interface: browse, search, one-click install.

How to use: open the marketplace from the settings page, and click Install when you find what you want; it takes effect only after a restart.

29MCP connectorsdsh-mcp-connector0.2.94

An MCP marketplace for enterprise, financial, legal, patent, and research data sources, managing authorization, search, and invocation.

How to use: when you need external data, find the connector here and authorize it first; check what permissions a call requires before invoking it.

Category 5 · Robot control (2, built in-house by NONEAD)

This category lets DSH drive Universal Robots arms directly in natural language.

30UR real-robot controldsh-nonead-universal-robots0.8.6

Control UR robot arms in natural language: read state, move joints, move linearly, force mode, I/O and registers, conveyor tracking, and more, built on the same logic as the in-house nUR MCP Server.

How to use: say "connect 192.168.x.x" first, then issue actions. Motion commands are subject to an approval gate by default and need your confirmation one by one.

31UR offline simulationdsh-nonead-ursim0.3.14

The offline-simulation variant of the same logic: drive a virtual UR arm to validate trajectories when no real robot is present.

How to use: get the motion working in simulation and confirm nothing collides before going on the real arm; simulation models kinematics only — force mode and I/O have no semantics.

Category 6 · Images and media (3)

This category turns results into things you can deliver directly: images, video, documents.

32Image generation workbenchdsh-image-gen0.10.3

Brings ChatGPT-style image generation into DSH: Gemini, OpenAI, Seedream, and DashScope are supported, and local ComfyUI workflows can be used too; it comes with a canvas where you can sketch and pick reference images.

How to use: say "draw a ..." and it produces the image attached straight to the conversation; to change an existing image say "change this one to ...". Switching provider or model has to be stated explicitly — by default it uses the one configured in Settings.

33React video workbenchdsh-remotion0.10.5

Official Remotion skills plus project retrieval, templates, asset ordering, Studio preview, and MP4 export.

How to use: enable it when you need a video or a title card; look at templates before editing — faster than writing components from scratch. Preparing the environment the first time downloads dependencies, so it needs network access.

34Univer document previewdsh-univer-office0.4.0

DSH × Univer integration: inline document preview, floating worktree windows, and review actions at session end.

How to use: when it produces spreadsheets / documents / slide decks, the result previews right in the panel — no need to download and open it.

Category 7 · System maintenance (1)

35Configuration backupdsh-config-manager0.4.3

Backs up, restores, exports, imports, migrates, and syncs a whole DSH configuration: settings, plugins, MCP, skills, agent presets, and more.

How to use: export once before a major configuration change; when moving to another machine, restore with import — far faster than reconfiguring item by item.

This inventory is a snapshot and changes as you install or remove plugins. To see what is installed on this machine right now, and at which versions: compare against the plugin marketplace in the settings page, or read dependencies in profiles/desktop/package.json under the data directory.

And don't switch everything on at once. The more plugins you have, the more context and startup overhead they cost. The Skills market mentioned above shows each skill's injection cost — estimate before installing. Anything you don't need for now can be disabled and re-enabled when it matters.

11. Updates

The application checks for new versions quietly in the background without interrupting you. When it finds one, it only signals on the tray icon; it never opens a popup on its own.

Check New version Tray notice Download Install Restart done Failures never affect the current version: retry the install from the tray, and the downloaded package is reused — no re-download.
Figure 8 The five stages of an update; failure at any step keeps the current version intact.

A few practical switches:

ActionEffect
Skip this versionThat version stops being offered; still in effect after restarts
Stop skippingClears the skip record; the version is offered again
Retry installReuses the installer package already downloaded, no re-download
Install and restartInstalls and restarts directly once it is ready
Table 4 The four update-related actions.

12. What to do when something goes wrong

Start with the table below; the vast majority of problems can be solved by yourself.

SymptomWhat to do
The window is goneCheck the system tray. Closing the window only hides it; it does not quit.
Nothing responds / it keeps spinningWait a moment; if it is still unresponsive, restart from the tray menu, or use "Restart in recovery mode".
Crashes at startup, can't get inUse the Recovery Assistant to roll back to the most recent working configuration. It snapshots the current state first, so the rollback itself can be rolled back.
A plugin installed but has no effectConfirm the command applied to the correct Profile, then restart the application.
Asked for an image but none appearedImage generation needs an image provider configured in Settings first (API credentials, or a logged-in subscription account). Until that is done it only tells you no provider is available.
Command not found in the terminalOpen a fresh "DSH Terminal" from the tray again; the desktop app does not modify the system PATH.
The right-hand "Files" panels keep reporting 4xxUsually a plugin is missing a service it depends on and stays stuck. Search logs/ in the data directory for pending (waiting for service:, then disable the plugin in question and restart.
No update notice receivedThe background check is silent. Use "Check for Updates" in the tray or in Settings to see the result.
Table 5 Common symptoms and how to handle them.

Exporting diagnostics

If a problem needs to be reported to the maintainers, right-click the tray icon to export a diagnostic bundle. It collects the most recent logs; identifiable credentials in the logs are masked, but local paths, workspace names, and session IDs may remain — check the content yourself before uploading it publicly.

13. Where your data lives, and where to find help

ContentLocation
Data directory (sessions / settings / logs)Default ~/.dsh; on Windows it is %USERPROFILE%\.dsh
Logslogs/ inside the data directory
Window position and sizewindow-state.json in the application data directory
Desktop settings (including the port)desktop-preferences.json inside the data directory
Environment variable overrides.env in the application data directory (strict KEY=VALUE, does not override real environment variables)
Table 6 Where common files live.

More documentation

One last piece of advice: treat this manual as a map, not a specification. Only three things really need to be remembered day to day — state the request clearly in the input box, glance at the confirmation dialog before a write operation, and look at the tray when you can't find the window.

Acknowledgements

This manual exists because of other people’s work.

DeepSeek and the DeepSeek Harness upstream team — the product is built on unmodified upstream: the agent loop, tool calls, plugin host and web UI all come from it, and its public code and documentation are the technical basis of this manual.

The authors of the 35 plugins — most of them are independent community projects. Grouped by repository ownership — these are the GitHub accounts and organisations:

The installer also stands on open-source projects: Electron, electron-builder, pnpm, the Node.js and Python runtimes, and many authors in the upstream dependency tree. If a name is missing or wrong, please open an issue in the repository.

About the publisher:This manual and the product are published by Nonead Technology. Nonead Technology (Suzhou Nonead Robot Technology Co., Ltd.) has no affiliation, association or connection with DeepSeek or its affiliates — the product is developed and maintained independently, does not represent DeepSeek’s positions or views, and is not authorised, endorsed or approved by DeepSeek.
Legal name:Suzhou Nonead Robot Technology Co., Ltd.
Address:房间 9-10, 4F, Building B, Tengfei Xinsu Fang, No. 5 Xinghan Street, Suzhou Industrial Park, Jiangsu, China
Website:https://www.nonead.com
Tel:0086-0512-67263000
Email:service@nonead.com