Skip to main content

How to use deepseek-harness-studio

dsh browser surface package: Built on dsh-base, adds web host and browser plugin support; registers frontend dist, URL output, default browser launch, and DSH_WEB_URL variable.

This article is auto-derived from indexed fields (wiki / faq / compatibility_json), not freshly AI-generated.

This article is derived from the plugin's already-indexed fields (wiki / faq / compatibility_json / readme), not freshly generated by AI. Source field is noted at the end of each section.

Quick start

deepseek-harness-studio

— source: plugin_wiki.wiki_content

Install & verify

dsh plugin --profile web add @deepseek-ai/dsh-web-app

Run the command above in your DSH Web Profile. Then enable the plugin in the plugin list.

— source: plugins.install

Key points

  • Electron 桌面端:提供应用窗口、系统托盘、单实例运行、外部链接处理和安全的 preload 通信接口。
  • 本地 Harness Host:桌面主进程启动 dsh web,等待本地服务就绪,并在应用退出时关闭 Host 进程。
  • Web 工作区:保留 DeepSeek Harness 的会话、工作区、模型、工具、Skills 和插件运行能力。
  • 插件发现与推荐:自动读取在线目录,通过精选、最近更新、生态热门、场景分类和搜索,帮助用户快速找到值得尝试的插件。
  • Agent 智能找插件:用一句自然语言描述需求,Agent 自动检索公开 dsh-plugin 目录、筛选相关候选并说明推荐理由。

— source: plugin_wiki.readme_en (fallback readme_raw)

FAQ

What is this bundle and what is it for?

It is dsh's 'Web surface' bundle, which overlays on dsh-base all the host and browser plugins needed for the browser interface. After installation, start a local GUI service via dsh --profile web and open it with the default browser.

What is the relationship with dsh-headless and dsh-desktop?

These three are sibling surface bundles on top of dsh-base. web-app is the browser surface, headless is the headless surface, and desktop is the desktop application; they do not nest with each other and one is loaded by selecting via --profile.

Will it automatically open the browser after starting? Can it be disabled?

It will automatically open the local URL with the system default browser; disable it with --no-open, or set openBrowser to false in the web-runtime configuration; it will also automatically skip browser handoff when starting via SSH.

Why is --host 0.0.0.0 rejected?

The bundle currently intentionally does not support binding to all network interfaces (it will report a usage error and exit before activation), because this would expose remote code execution capabilities to the network. Please use 127.0.0.1 or LAN trusted host mode.

What should I do when it says 'frontend dist not built'?

This indicates the frontend dist has not been built in the repository. This bundle treats the dist path as internal workspace knowledge, requiring pnpm run build to be run first at the repository root.

What is the DSH_WEB_URL variable provided for?

The bundle registers a bash-visible runtime variable DSH_WEB_URL, which is resolved from the currently listening local URL on each invocation; models and scripts can use it to locate the current GUI.

Why are some of the tools/toolbars shared between Web and dsh-base disabled?

Web moves the agent plane (tool-bash, tool-pwsh, tool-fs, tool-skill, tool-subagent, etc.) to session-level agent presets, while the host plane only retains registry and services; therefore, networked agents are assembled according to their respective presets.

HMR doesn't seem to be working?

The hmr line in cordis.patch.yml is currently set to disabled, with a TODO note: re-enable after the Web-side reload lifecycle testing is complete.

— source: plugin_wiki.faq_json

Compatibility

  • DSH: 0.1.0-rc.8
  • Node: >=22.19.0

— source: plugin_wiki.compatibility_json

Pitfalls

Review the upstream repo before installing. This guide is auto-derived from indexed fields and may lag the latest release. If anything contradicts the official docs, treat the upstream source as authoritative.

— source: general rule

How to use deepseek-harness-studio