Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
3c25d8b
feat(desktop): bundle pinned SkillHub DSH plugin
Sep 26, 2026
f07e888
fix(skills): isolate WorkDSH skill roots and show real categories
Sep 26, 2026
70f1729
feat(skills): paginate SkillHub and render catalog icons
Sep 26, 2026
303bf37
fix(skills): keep SkillHub context after installation
Sep 26, 2026
9110155
fix(skills): normalize SkillHub skill names after installation
Sep 26, 2026
8cde2c1
Revert "fix(skills): normalize SkillHub skill names after installation"
Sep 26, 2026
dd5d1ca
fix(skills): manage SkillHub entries by official DSH skill name
Sep 26, 2026
bc73b8d
fix(skills): align installed validation with upstream loader
Sep 26, 2026
2b47f87
fix(skills): resolve local SkillHub entries by declared name
Sep 26, 2026
e033c37
fix: expose WorkDSH plugin descriptions to DSH manager
Sep 26, 2026
42ea726
fix: retain package names in plugin manager
Sep 26, 2026
03232a5
feat: add community plugin discovery entry to DSH manager
Sep 26, 2026
1ff24f2
Revert "feat: add community plugin discovery entry to DSH manager"
Sep 26, 2026
123e900
feat: embed dshmarket in existing plugin manager
Sep 26, 2026
e86a404
ui: surface community plugin discovery on first screen
Sep 26, 2026
22c3326
ui: highlight community market discovery on first view
Sep 26, 2026
4cb8de3
ui: tint community plugin discovery card
Sep 26, 2026
beb5849
release: prepare SkillHub and DSH market desktop alpha
Sep 26, 2026
2f30140
ci: validate Desktop against same-commit Web release candidate
Sep 26, 2026
5cac257
build: use one cross-platform Desktop release packaging script
Sep 26, 2026
31d0057
fix(release): ignore generated files in source cleanliness gate
Sep 26, 2026
b0bd304
diagnostics(release): report package source mismatch
Sep 26, 2026
8a6d7fb
fix(release): scope Web source gate to Web and DSH inputs
Sep 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 17 additions & 40 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -157,20 +157,9 @@ jobs:
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: yarn-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('yarn.lock', '.yarnrc.yml') }}
- run: yarn install --immutable
- run: yarn upstream:install
- run: yarn workspace dsh-plugin-desktop check:win-package
- name: Prepare WorkDSH release profile
timeout-minutes: 15
run: yarn workspace dsh-plugin-desktop prepare:workdsh-runtime
- name: Prepare official Python and Node runtime
timeout-minutes: 15
run: yarn workspace dsh-plugin-desktop prepare:workdsh-primary-runtime
- name: Build Windows installer
timeout-minutes: 30
env:
DSH_PACKAGE_CHECK_ALREADY_RAN: '1'
run: node dsh-plugin-desktop/scripts/package-win.ts
- name: Package Windows through the single release script
timeout-minutes: 60
run: node scripts/package-desktop-release.mjs --source=${{ github.ref_type == 'tag' && 'published' || 'local' }}
- name: Report unpacked Windows footprint
run: node dsh-plugin-desktop/scripts/report-package-footprint.mjs dsh-plugin-desktop/dist/win-unpacked dsh-plugin-desktop/dist/windows-footprint.json
- name: Upload Windows footprint report
Expand Down Expand Up @@ -220,25 +209,11 @@ jobs:
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: yarn-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('yarn.lock', '.yarnrc.yml') }}
- run: yarn install --immutable
- run: yarn upstream:install
- run: yarn workspace dsh-plugin-desktop check:mac-package
- name: Prepare WorkDSH release profile
timeout-minutes: 15
env:
WORKDSH_MAC_ARCH: ${{ matrix.arch }}
run: yarn workspace dsh-plugin-desktop prepare:workdsh-runtime
- name: Prepare official Python and Node runtime
timeout-minutes: 15
env:
WORKDSH_MAC_ARCH: ${{ matrix.arch }}
run: yarn workspace dsh-plugin-desktop prepare:workdsh-primary-runtime
- name: Build macOS smoke artifact
timeout-minutes: 25
- name: Package macOS through the single release script
timeout-minutes: 55
env:
DSH_PACKAGE_CHECK_ALREADY_RAN: '1'
WORKDSH_MAC_ARCH: ${{ matrix.arch }}
run: node dsh-plugin-desktop/scripts/package-mac.ts
run: node scripts/package-desktop-release.mjs --source=${{ github.ref_type == 'tag' && 'published' || 'local' }}
- name: Upload macOS architecture DMG
uses: actions/upload-artifact@v4
with:
Expand Down Expand Up @@ -284,6 +259,11 @@ jobs:
node-version: 22.23.2
- name: Require one DSH version before publication
run: node scripts/verify-desktop-dsh-alignment.mjs
- name: Require release tag to match Desktop package version
env:
TAG: ${{ github.ref_name }}
run: |
node -e "const version = require('./dsh-plugin-desktop/package.json').version; if (process.env.TAG !== 'desktop-v' + version) { throw new Error('Release tag does not match Desktop package version: ' + process.env.TAG + ' != desktop-v' + version) }"
- name: Download desktop packages
uses: actions/download-artifact@v5
with:
Expand All @@ -308,17 +288,14 @@ jobs:
run: |
VERSION="${TAG#desktop-v}"
cat > release-notes.md <<'EOF'
WorkDSH Desktop 提供 Windows x64 安装版和 macOS Intel x64 与 Apple Silicon arm64 独立 DMG。
WorkDSH Desktop 将 WorkBuddy 风格的项目、资料、专家、技能和连接器工作台与 DeepSeek Harness 插件能力结合。

- 桌面产品名称统一为 WorkDSH
- 安装包内置完整 WorkDSH 运行时,启动后可直接使用项目、资料库、专家、技能和连接器
- 内置 Node 和 Python;Agent 使用 Playwright 浏览网页时,可在同一会话的右侧栏查看并操作页面
- 应用、Dock、托盘和安装包图标统一为 WorkDSH 蓝色 W 标识
- README 包含项目、资料库和桌面端下载说明
- Windows 包在原生 Windows Runner 构建和验证
- macOS 分别提供 Intel x64 和 Apple Silicon arm64 未签名预览包
- 技能页接入 SkillHub 目录,可查看技能图标、来源、版本与安装入口;本地技能仍可单独管理。
- 现有插件页可直接发现 DSH 社区插件,并打开第三方 dsh-market 目录进行搜索和安装。
- Desktop 使用锁定的官方 DSH 0.1.7-rc.2 Profile;内置 Node.js 和 Python,不额外打包浏览器。
- 提供 Windows x64 安装包,以及 macOS Intel x64、Apple Silicon arm64 未签名 DMG。

这是 Alpha 预发布。请在升级前备份本地配置和数据;未签名包可能触发系统安全提示。所有文件的 SHA-256 见 `SHA256SUMS`。
SkillHub 和 dsh-market 是独立第三方来源;目录内容并非全部预装或经 WorkDSH 审核。安装前请检查许可、依赖和版本兼容性。本次为 Alpha 预发布,升级前请备份本地配置和数据。所有文件的 SHA-256 见 `SHA256SUMS`。
EOF
gh release create "$TAG" release-assets/* \
--repo "$GITHUB_REPOSITORY" \
Expand Down
4 changes: 2 additions & 2 deletions README.i18n.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Bilingual-pair consistency record: the git blob hash of each side as of the last
# confirmed-consistent state. Both languages carry equal authority. Update both files
# and re-record their hashes after editing either side.
README.md: 0d11f05e25608c5c34d30eb0b95d4e3212393f14
README.zh-CN.md: 6d7025fa93be348b50387f5ebb1606c465e5bab4
README.md: 636211746118f3e3d09c65a3301cd5c319a89a11
README.zh-CN.md: 886a541b6e12b67eeb46564f3e56b1893bdf9003
40 changes: 20 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
<p align="center"><img src="workdsh-web/assets/brand/workdsh-logo.svg" width="88" alt="WorkDSH logo"></p>
<h1 align="center">WorkDSH</h1>
<p align="center"><strong>A WorkBuddy-style workspace with the DSH plugin ecosystem.</strong></p>
<p align="center">Inspired by WorkBuddy, WorkDSH brings projects, material, experts, skills, and connectors to the desktop—and extends them through DeepSeek Harness plugins.</p>
<p align="center"><strong>A WorkBuddy-style workspace where skills, experts, and plugins shape new workflows.</strong></p>
<p align="center">WorkDSH brings material, experts, skills, and connectors into one workspace, with the SkillHub catalog and installable DSH community plugins.</p>
<p align="center"><a href="#download-desktop">Download Desktop</a> · <a href="#from-material-to-deliverable">Explore the workflow</a> · <a href="docs/user-guide.en.md">User guide</a> · <a href="README.zh-CN.md">简体中文</a></p>

[![Desktop release](https://img.shields.io/badge/Desktop-2.0.5--alpha.21-176BFF)](https://github.com/techflag/workdsh/releases/tag/desktop-v2.0.5-alpha.21) [![GitHub stars](https://img.shields.io/github/stars/techflag/workdsh?label=stars)](https://github.com/techflag/workdsh) [![MIT License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
[![Desktop release](https://img.shields.io/badge/Desktop-2.0.6--alpha.1-176BFF)](https://github.com/techflag/workdsh/releases/tag/desktop-v2.0.6-alpha.1) [![GitHub stars](https://img.shields.io/github/stars/techflag/workdsh?label=stars)](https://github.com/techflag/workdsh) [![MIT License](https://img.shields.io/badge/license-MIT-green)](LICENSE)

![WorkDSH projects home with project templates and the complete desktop sidebar](workdsh-web/assets/screenshots/workdsh-projects-alpha8-dark.png)

<sub>Captured from a local WorkDSH session. Project names and account figures are demonstration data, not bundled with the installer.</sub>

## A WorkBuddy-style experience, an open DSH ecosystem

WorkDSH takes WorkBuddy's way of organizing work as its model. It recreates the core path from projects and document references to expert and skill collaboration, while retaining DeepSeek Harness models, tools, and sessions so the desktop workspace can grow through DSH plugins.
WorkDSH draws on WorkBuddy's way of organizing projects, material, experts, skills, and connectors, and implements those pages and management features on DeepSeek Harness. DSH is a complete agent application in its own right; it composes models, tools, skill support, and UI through plugins. WorkDSH adds its workspace features through the same mechanism.

| What you need to do | Where WorkDSH helps |
| --- | --- |
Expand Down Expand Up @@ -40,31 +40,31 @@ This path is WorkDSH's product direction. End-to-end validation of project docum

</details>

## WorkBuddy-style Skills meet DSH plugins
## Skills and plugins

This is the other half of WorkDSH: **the workflow draws on WorkBuddy; extensions use DSH**. These ecosystems serve different purposes:
It helps to distinguish **the content people use** from **the software extension that manages it**. A skill usually consists of instructions and resources containing `SKILL.md`; it can be installed directly into the local DSH Skills directory and is not necessarily a plugin. WorkDSH's skill manager is a DSH plugin. An expert configuration is not itself a plugin either; a WorkDSH plugin manages experts. Other DSH plugins can add tools or UI features directly. The plugin system can therefore support skills, experts, and software functions without making every skill or expert a separate plugin.

| | WorkBuddy-style Skill | DSH plugin |
| --- | --- | --- |
| What it adds | Reusable instructions, scripts, references, and resources | New tools, services, and workspace capabilities |
| How it works | Import a file or ZIP containing `SKILL.md`, review it, then confirm installation | Load and compose plugins against the current DSH version |
| In WorkDSH | Search, enable, and manage a local skill directory; migrate WorkBuddy-style and community Skills | Projects, library, experts, skills, and connectors are themselves extensions; third-party plugins can be adapted |
DSH plugins can be individual tools or combine UI, services, and other resources into a larger application scenario. For example, a data-management plugin could add data views and processing tools, then work with skills and experts across a workflow. This illustrates what the plugin model can support; it does not mean this release bundles such a data-management system. Users can discover and install skills through SkillHub and find DSH community plugins through dsh-market. Before installing a plugin, check what it provides and whether it supports the current DSH version.

WorkBuddy-style Skills come from a broad ecosystem. WorkDSH offers a compatible import path, **not a claim that every Skill is tested or preinstalled**. Skills with scripts, external services, or special dependencies need individual testing; third-party DSH plugins need version-specific validation too. [Skill management](workdsh-web/packages/plugins/skills/README.md) · [Plugin development](docs/plugin-development.en.md) · [Ecosystem manifesto](docs/plugin-ecosystem.en.md)
WorkDSH connects two independently maintained catalogs: [SkillHub](https://skillhub.cn/) for Skills and [dsh-market](https://dshmarket.com/zh/) for DSH plugins. SkillHub entries show their source and version, and open the source page for license information before installation. The DSH catalog is provided by the third-party dsh-market plugin inside the existing plugin page. Catalog entries are **not all preinstalled, reviewed, or endorsed by WorkDSH**; check each item's license, dependencies, and DSH compatibility. [Skill management](workdsh-web/packages/plugins/skills/README.md) · [Plugin development](docs/plugin-development.en.md) · [Ecosystem manifesto](docs/plugin-ecosystem.en.md)

![WorkDSH skill catalog with local entries, categories, and install actions](workdsh-web/assets/screenshots/workdsh-skills-alpha8-dark.png)
![SkillHub catalog inside WorkDSH, showing skill icons, versions, sources, and install actions](workdsh-web/assets/screenshots/workdsh-skillhub-2026-09.png)

<sub>The installable entries shown here come from the demonstration machine's local skill directory. They are neither bundled with the installer nor an officially hosted online marketplace.</sub>
<sub>Live SkillHub results; catalog size and entries change over time. The local session shown is a demonstration environment.</sub>

![DSH community plugin catalog opened from WorkDSH's existing plugin page](workdsh-web/assets/screenshots/workdsh-dshmarket-2026-09.png)

<sub>The third-party dsh-market plugin supplies discovery and installation. The screenshot does not imply that catalog plugins are bundled with WorkDSH.</sub>

## Download Desktop

The current public desktop installer release is **2.0.5-alpha.21**. These links point directly to files in its [GitHub Release](https://github.com/techflag/workdsh/releases/tag/desktop-v2.0.5-alpha.21):
The planned desktop installer release is **2.0.6-alpha.1**. Its download links will become available after the [GitHub Release](https://github.com/techflag/workdsh/releases/tag/desktop-v2.0.6-alpha.1) is published:

| Platform | Download |
| --- | --- |
| Windows x64 | [WorkDSH Setup.exe](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.5-alpha.21/dsh-plugin-desktop-windows-x64--WorkDSH-2.0.5-x64-Setup.exe) |
| macOS Apple Silicon | [WorkDSH arm64.dmg](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.5-alpha.21/dsh-plugin-desktop-macos-arm64--WorkDSH-2.0.5-arm64.dmg) |
| macOS Intel | [WorkDSH x64.dmg](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.5-alpha.21/dsh-plugin-desktop-macos-x64--WorkDSH-2.0.5-x64.dmg) |
| Windows x64 | [WorkDSH Setup.exe](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.6-alpha.1/dsh-plugin-desktop-windows-x64--WorkDSH-2.0.6-alpha.1-x64-Setup.exe) |
| macOS Apple Silicon | [WorkDSH arm64.dmg](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.6-alpha.1/dsh-plugin-desktop-macos-arm64--WorkDSH-2.0.6-alpha.1-arm64.dmg) |
| macOS Intel | [WorkDSH x64.dmg](https://github.com/techflag/workdsh/releases/download/desktop-v2.0.6-alpha.1/dsh-plugin-desktop-macos-x64--WorkDSH-2.0.6-alpha.1-x64.dmg) |

Desktop installers include Node.js and Python runtimes by default, so users do not need to install them separately. This is an **Alpha release**: end-to-end project document references, expert execution, and different Office formats are still being validated. The macOS DMGs are unsigned; download updates from [Releases](https://github.com/techflag/workdsh/releases). Start with the [user guide](docs/user-guide.en.md) and [FAQ](docs/faq.en.md).

Expand All @@ -78,11 +78,11 @@ corepack yarn install --immutable
corepack yarn dev
```

Run checks with `corepack yarn check`. [Contributing](CONTRIBUTING.en.md)
Run checks with `corepack yarn check`. On macOS or Windows, `corepack yarn release:pack` builds the Web Profile and Desktop package from the current commit. Once the Web package is published, use `corepack yarn release:pack:published` for the final installer. Both commands share the same [packaging script](scripts/package-desktop-release.mjs). [Contributing](CONTRIBUTING.en.md)

## Community and acknowledgements

WorkDSH builds on the open-source [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) project. Feedback and contributions: [GitHub Issues](https://github.com/techflag/workdsh/issues) · [Contributing](CONTRIBUTING.en.md)
Thanks to the maintainers and contributors of [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness), the foundation of our runtime and plugin system; [Tencent SkillHub](https://github.com/Tencent/skillhub), whose public catalog API powers skill discovery; [@cocofhu/skillhub](https://github.com/cocofhu/skillhub), the bundled DSH SkillHub plugin; and [dsh-market](https://github.com/dsh-market/dsh-market) with the [awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin) catalog, which power community plugin discovery. WorkBuddy inspired the workspace design. The bundled skill-creator adaptation retains its [Apache-2.0 notice](workdsh-web/packages/plugins/skills/resources/skills/workdsh-skill-creator/NOTICE.md). Feedback and contributions: [GitHub Issues](https://github.com/techflag/workdsh/issues) · [Contributing](CONTRIBUTING.en.md)

WorkDSH uses the [MIT License](LICENSE). It is an independent community project and is not affiliated with, partnered with, authorized by, or endorsed by DeepSeek or WorkBuddy. Those names appear only to describe technical origins, compatibility, and design references. Upstream contributors shown on GitHub are inherited from synchronized commit history; this does not imply that they maintain this repository.

Expand Down
Loading
Loading