mirror of
https://github.com/anywhere-labs/dsh-desktop.git
synced 2026-09-28 05:03:17 +08:00
3.4 KiB
3.4 KiB
Contributing
Thank you for wanting to contribute to DSH Desktop. This is a community project — whether you are a regular user, a plugin author, or a developer, there is a way to contribute that fits you.
Regular users: use, report, and spread the word
- Report problems or odd behavior in an issue: include your operating system (macOS / Windows), application version, and reproduction steps.
- Feature ideas and improvement suggestions are welcome as issues too.
- Join the community channels (WeChat group, QQ group, Discord) and help other users.
- Write tutorials or experience posts, or help improve and translate the documentation.
- Suggest ecosystem projects for the related links section.
Plugin authors: extend the ecosystem
DSH is built around plugins. If you write plugins, start with:
- Plugin development: how to write ordinary DSH plugins and Desktop plugins.
- DSH plugin ecosystem manifesto: our vision of an open, composable, sustainable ecosystem, and the three principles — composition first, declare clearly, compatibility first.
- DSH Community Fabric Draft: join the public discussion of manifests, capabilities, Host Descriptors, and event contracts.
- Community Market design: how the future market will discover plugins and why listing is not a security review.
Plugins that follow the manifesto coexist better with other plugins and will be easier to discover and trust in the marketplace when it ships.
Developers: contribute code
Development environment
git submodule update --init --recursive
corepack yarn install --immutable
corepack yarn check # full headless gate: build, typecheck, tests, and smokes
corepack yarn dev # launch the application when a graphical session is available
Repository boundaries (please read before starting)
deepseek-harness/is the pinned upstream submodule. Desktop development never edits files inside it; upstream updates land through separate pin commits.- Desktop code lives in
dsh-plugin-desktop/;dsh-community-fabric/owns the community-standard Draft anddsh-community-market/owns the market-shell design. Both community packages are currently documentation-only and not loadable; all three owned packages share the outer Yarn workspace. - Builds, typechecks, unit tests, and smoke checks must stay headless-safe.
Commits and pull requests
- Use conventional commit messages (for example
fix(desktop): ...,docs: ...). - Run
yarn checkand keep it green before committing. - After changing production dependencies, run
yarn workspace dsh-plugin-desktop verify:noticesto refresh the third-party notices and commit the updateddsh-plugin-desktop/THIRD_PARTY_NOTICES.md. - Documentation changes should stay bilingual and update the
README.i18n.yamlhash record. - Describe the change, its motivation, and how it was verified in the PR; merge after CI passes.
Join the technical team
If you would like to join our technical team, contact us at t4wefan@qq.com.
Code of conduct
Be kind and respectful, and stick to the topic. We want a community that welcomes newcomers. The Contributor Covenant applies to all project spaces.