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-05 12:46:38 +08:00
The internal build uploads all Session Logs by default to help diagnose reported problems. Set `DSH_TELEMETRY_DISABLED=1` to disable telemetry. Send feedback through the internal WeChat group.
2026-07-22 10:55:16 +08:00
2026-08-10 15:20:52 +08:00
## Run from source
2026-07-22 10:55:16 +08:00
2026-08-10 15:20:52 +08:00
Install `git` , Node `^22.19 || >=24` , and Corepack-enabled `pnpm` , then prepare a source checkout:
2026-07-22 10:55:16 +08:00
```sh
2026-08-10 15:20:52 +08:00
git clone https://github.com/deepseek-ai/deepseek-harness-sdk.git
2026-07-31 20:29:25 +08:00
cd deepseek-harness
2026-08-10 15:20:52 +08:00
pnpm install
2026-07-22 10:55:16 +08:00
```
2026-08-10 16:01:12 +08:00
Set `DEEPSEEK_API_KEY` in the environment or the repository's root `.env` . Run DeepSeek Harness from this checkout through the root `pnpm` scripts below.
2026-07-22 10:55:16 +08:00
2026-07-23 00:15:44 +08:00
## Use DeepSeek Harness
### Web UI
2026-08-10 15:20:52 +08:00
Start the recommended local interface from the repository root:
2026-07-23 00:15:44 +08:00
```sh
2026-08-10 16:01:12 +08:00
pnpm dsh web
2026-07-23 00:15:44 +08:00
```
2026-08-10 15:20:52 +08:00
The command builds the repository before starting the Web UI, which is served at `http://127.0.0.1:3080` by default.
2026-07-23 00:15:44 +08:00
2026-08-06 04:40:40 +08:00
### Profiles
2026-07-23 00:15:44 +08:00
2026-08-10 15:20:52 +08:00
The source CLI boots profiles — ordered stacks of plugin-bundle patch layers under your own overrides in `$DSH_HOME/profiles/<name>` :
2026-07-23 00:15:44 +08:00
```sh
2026-08-10 16:01:12 +08:00
pnpm dsh --profile web # the browser UI
pnpm dsh plugin --profile tui add < package > # install a plugin into a custom profile
pnpm dsh --profile tui # boot it
2026-07-23 00:15:44 +08:00
```
2026-08-09 15:27:21 +08:00
The [CLI reference ](apps/cli/README.md#profiles ) describes profile layout, layer semantics, and config dump commands.
2026-08-04 10:07:17 +08:00
2026-07-23 00:15:44 +08:00
### Headless
2026-06-10 22:57:44 +08:00
2026-07-23 00:15:44 +08:00
Run one task, print the final answer, and exit:
```sh
2026-08-10 16:01:12 +08:00
pnpm dsh run "summarize this workspace"
2026-07-23 00:15:44 +08:00
```
2026-07-30 16:47:27 +08:00
### Automation and SDKs
2026-07-31 11:18:49 +08:00
From a source checkout with `DEEPSEEK_API_KEY` in the environment or its root `.env` , start the ACP automation server:
2026-07-30 16:47:27 +08:00
```sh
pnpm run demo:acp
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-31 11:18:49 +08:00
The [Python SDK ](python/README.md ) drives a bundled JSON-RPC runtime. The [examples ](examples/README.md ) cover the runnable headless, ACP, JSON-RPC, Code Mode, and self-referential compositions.
2026-07-30 16:47:27 +08:00
2026-07-23 00:15:44 +08:00
## Why DeepSeek Harness
2026-08-04 10:07:17 +08:00
Built-in capabilities cover file reading, editing, and search; shell and persistent PTY execution; reusable skills; task tracking, goals, plans, todos, and background tasks; subagents and workflows; sandboxing and approvals; settings and credentials; persistent, resumable, forkable, and queryable sessions; LSP and web access; context compaction; and telemetry. Each composition selects the subset appropriate to its surface. The Web UI includes Plan Mode.
2026-07-23 00:15:44 +08:00
- **Everything is a plugin.** Models, tools, policies, storage, context management, and interfaces are composable [Cordis plugins ](docs/user/develop/basic/index.md ), so deployments can extend or replace behavior without forking the agent loop. See the [architecture ](docs/architecture.md ) for the underlying design.
2026-07-30 16:47:27 +08:00
- **Runs are reconstructable.** Anything visible to the model is logged in the authoritative session stream; persistence, resume/fork/query, replay, telemetry, and UIs derive from the same events. See the [session-log architecture ](docs/architecture.md#session-log ).
2026-07-23 00:37:30 +08:00
- **Code Mode (opt-in).** It exposes a `run_code` tool and a generated TypeScript SDK; only program output re-enters model context. See [Code Mode ](packages/core/tools/README.md#code-mode ).
2026-07-30 03:40:42 +08:00
- **Self-referential Cordis tools are opt-in.** They let the agent inspect its live runtime and mount or unmount plugins while it runs. See the [Cordis tools ](packages/self-modification/tool-cordis/README.md ).
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
2026-07-30 17:17:22 +08:00
DeepSeek Harness is currently in internal testing.
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 ).