2026-06-10 22:57:44 +08:00
# DeepSeek Harness
docs: bilingual docs contract, translation skill, and pairing gate
Establish EN->ZH bilingual documentation for the README and docs tree:
- docs/i18n/README.md — the pairing contract: sibling foo.md <-> foo.zh.md,
English canonical, blob-hash source fingerprints, language switchers,
scope/exclusions, and a manifest-driven rollout ratchet.
- docs/i18n/translation-rules.md — how to translate: faithfulness, structure
preservation, terminology discipline over docs/i18n/terminology.md, and
typography rules grounded in MDN/K8s/Vue/clreq conventions.
- .agents/skills/dsh-translate-docs — the committed agent workflow, following
the dsh-code-review pattern of deferring to docs as sources of truth.
- scripts/verify-translation-pairing.ts + manifest — a doc-sync gate: required
pairs exist; every existing .zh.md is fresh (fingerprint = current source
blob), switcher-linked, structure-matched, and non-orphaned; excluded
(generated) docs stay unpaired. --list prints the translation work list.
- RFC (implemented/process) recording the decision and the alternatives.
- Dogfood: README.zh.md and the two i18n docs translated under their own rules.
Gates: doc-sync green including the new gate; red/green proven for stale
fingerprint, orphan, and excluded-file violations.
2026-07-02 23:12:25 -07:00
English | [中文 ](README.zh.md )
2026-06-10 22:57:44 +08:00
2026-07-23 12:15:56 +08:00
DeepSeek Harness (`dsh` ) is an open-source coding agent built on the DeepSeek Harness SDK.
It uses an architecture where **everything is a plugin** .
2026-06-10 22:57:44 +08:00
2026-07-30 17:17:22 +08:00
## Internal testing notice
2026-07-22 10:55:16 +08:00
2026-08-05 12:46:38 +08:00
DeepSeek Harness is under internal testing. Features and interfaces may change.
2026-07-22 10:55:16 +08:00
2026-08-11 11:59:05 +08:00
Session Logs stay local by default. Set `DSH_TELEMETRY_MODE=FEEDBACK_ONLY` to share a Session Log only when submitting feedback, or `DSH_TELEMETRY_MODE=FULL` to upload continuously; `FULL` also enables dsh-sdk command telemetry reporting an anonymous ID, the command result, and redacted project configuration. Send feedback through the internal WeChat group.
2026-07-22 10:55:16 +08:00
2026-08-12 10:59:06 +08:00
## Run
2026-07-22 10:55:16 +08:00
2026-08-12 10:59:06 +08:00
Install Node.js ^22.19 or >= 24 and pnpm 11, then run the published package:
2026-07-22 10:55:16 +08:00
```sh
2026-08-12 10:59:06 +08:00
npx @deepseek -ai/dsh web
2026-07-22 10:55:16 +08:00
```
2026-08-12 10:59:06 +08:00
The command initializes the Web profile and prints the Web UI URL, which is `http://127.0.0.1:3080` by default. Open it, add a DeepSeek API key under **Settings → Models** , then start a session. The invoking directory is the default workspace; try `Summarize this repository and identify its main packages.`
2026-07-23 00:15:44 +08:00
2026-08-12 14:03:11 +08:00
Continue with the [Web UI guide ](docs/user/guide/index.md ).
2026-07-23 00:15:44 +08:00
2026-08-12 10:59:06 +08:00
### Run from source
2026-07-23 00:15:44 +08:00
2026-08-12 10:59:06 +08:00
To run a repository checkout instead:
2026-07-23 00:15:44 +08:00
```sh
2026-08-12 10:59:06 +08:00
git clone https://github.com/deepseek-harness/deepseek-harness.git
cd deepseek-harness
pnpm install
2026-08-12 11:57:02 +08:00
pnpm run build
2026-08-12 10:59:06 +08:00
pnpm dsh web
2026-07-23 00:15:44 +08:00
```
2026-08-12 11:57:02 +08:00
`pnpm run build` prepares the repository artifacts. `pnpm dsh web` starts the Web UI without rebuilding and opens the same path.
2026-06-10 22:57:44 +08:00
2026-08-12 10:59:06 +08:00
## Profiles and plugins
2026-07-23 00:15:44 +08:00
2026-08-12 10:59:06 +08:00
A profile is an ordered list of plugin bundles. The shipped `web` profile powers `dsh web` . Manage a profile with `dsh plugin --profile <name> <pnpm args>` , which forwards the remaining arguments to pnpm in that profile's directory:
2026-07-30 16:47:27 +08:00
```sh
2026-08-12 10:59:06 +08:00
npx -p @deepseek -ai/dsh dsh plugin --profile web add < package >
npx -p @deepseek -ai/dsh dsh plugin --profile web remove < package >
Document the architecture and rewrite AGENTS.md
docs/architecture.md: layering, service map, event taxonomy, the
session/turn/step lifecycle, Cordis waterfall semantics, an extension
cookbook, the plugin sanity checklist mapping every MVP feature to its
extension mechanism, and the deferred-work TODO list (sub-agents,
persistence backends, compaction, DeepSeek V4 adapter, parallel tool
execution, streaming-protocol review).
AGENTS.md: repo layout, commands, conventions (dsh-* naming, ESM,
effect-based registrations, declaration merging, waterfall semantics),
and the vendoring policy pointer.
2026-06-11 10:55:05 +08:00
```
2026-08-12 10:59:06 +08:00
`add` , `remove` , `update` , `why` , and other pnpm commands work unchanged. The command initializes a missing profile before changing its packages and updates its bundle list from installed packages that declare `dsh.bundle` . See the [CLI reference ](apps/cli/reference/README.md#plugin-management ) for the exact behavior.
2026-07-23 00:15:44 +08:00
2026-08-12 10:59:06 +08:00
The [CLI reference ](apps/cli/README.md ) covers headless execution and custom profiles. The [Python SDK ](python/README.md ) and [examples ](examples/README.md ) cover programmatic and custom compositions.
2026-07-23 00:15:44 +08:00
## Community
Follow < a href = "https://x.com/Deepseekharness" > DeepSeek Harness on Twitter< / a > for project updates.
## Development
Document the architecture and rewrite AGENTS.md
docs/architecture.md: layering, service map, event taxonomy, the
session/turn/step lifecycle, Cordis waterfall semantics, an extension
cookbook, the plugin sanity checklist mapping every MVP feature to its
extension mechanism, and the deferred-work TODO list (sub-agents,
persistence backends, compaction, DeepSeek V4 adapter, parallel tool
execution, streaming-protocol review).
AGENTS.md: repo layout, commands, conventions (dsh-* naming, ESM,
effect-based registrations, declaration merging, waterfall semantics),
and the vendoring policy pointer.
2026-06-11 10:55:05 +08:00
2026-07-23 00:37:30 +08:00
Start with the [development guide ](docs/development.md ) and read the [architecture ](docs/architecture.md ) before changing packages.
For agents, follow [AGENTS.md ](AGENTS.md ).
2026-07-23 00:15:44 +08:00
## License
2026-06-14 10:47:32 +08:00
2026-07-23 00:15:44 +08:00
[BSD 3-Clause ](LICENSE )
2026-07-29 21:29:49 -07:00
Third-party dependencies and their licenses are disclosed in [THIRD_PARTY_NOTICES.md ](THIRD_PARTY_NOTICES.md ).
2026-08-11 16:54:57 +08:00
2026-08-11 18:16:29 +08:00
## Contributing
2026-08-11 16:54:57 +08:00
Read [CONTRIBUTING.md ](CONTRIBUTING.md ) before contributing to this repository.