2nd dokployH
Find a file
Tianyi Cui d8dbb8235c refactor(acp): launch automation through the dsh acp profile
Replace the standalone @deepseek-ai/dsh-acp-demo application with dsh --profile acp plus ordered example patches. The shipped acp-app bundle owns only the protocol bridge; every example overlay now targets shared dsh-base rows instead of copying a complete application tree.

Move launcher responsibilities into the ACP snapshot harness: it materializes profile patches, links required packages, reserves stdout for JSON-RPC, observes spawn and drain failures, and escalates process teardown deterministically. The relocated control-surface fixture and the ACP/subagent integration tests now exercise the real CLI/profile path.

This commit contains authored runtime, configuration, and test changes only. Generated transcript and projection churn is deliberately left for the next commit so reviewers can inspect the migration logic without hundreds of expected-output edits.
2026-08-23 10:59:00 +08:00
.agents refactor(acp): launch automation through the dsh acp profile 2026-08-23 10:59:00 +08:00
.claude docs: accuracy sweep, architecture restructure, two ADRs, review skill 2026-06-13 22:05:34 +08:00
.github Merge pull request #2875 from deepseek-harness/ci/python-release-gray 2026-08-23 10:34:15 +08:00
apps feat(profiles): add the ACP application bundle 2026-08-23 10:59:00 +08:00
docs refactor(acp): launch automation through the dsh acp profile 2026-08-23 10:59:00 +08:00
examples refactor(acp): launch automation through the dsh acp profile 2026-08-23 10:59:00 +08:00
native docs: trim CoT leakage from post-purge prose 2026-08-22 20:35:11 +08:00
packages refactor(acp): launch automation through the dsh acp profile 2026-08-23 10:59:00 +08:00
patches chore(subprocess-local): bump node-pty beta 2026-08-13 17:58:13 +08:00
python Merge pull request #2875 from deepseek-harness/ci/python-release-gray 2026-08-23 10:34:15 +08:00
scripts refactor(acp): launch automation through the dsh acp profile 2026-08-23 10:59:00 +08:00
vendor release(vendor): cordis 4.0.1, cosmokit 1.8.2, group 1.0.1, hmr 1.0.16, include 1.0.6, loader 1.0.2, logger-console 1.0.1, schemastery 3.18.1, timer 1.1.3 2026-08-13 14:18:56 +08:00
website feat(deepseek): upload plugin package metadata (#2916) 2026-08-22 20:03:23 +08:00
.editorconfig Declare LF and final-newline conventions in .editorconfig 2026-07-15 16:09:12 +08:00
.gitattributes feat(i18n): compose pairing records during merges 2026-08-08 21:11:59 +08:00
.gitignore feat(build): bind client artifacts to build profiles 2026-08-19 18:21:27 +08:00
.gitlab-ci.yml Support MCP in packaged Python runtime 2026-08-18 13:50:53 +08:00
.jscpd.json chore(lint): bring .tsx files into the eslint, lefthook, and jscpd lanes 2026-07-27 21:42:08 +08:00
.oxlintrc.json feat(util): mint UUIDs without crypto.randomUUID in every context 2026-08-21 20:35:34 +08:00
.oxlintrc.staged.json refactor: make lint workflows Oxlint-only 2026-08-09 14:55:15 +08:00
.rgignore chore: exclude archived Agent Notes from rg 2026-08-10 14:49:30 +08:00
AGENTS.md feat(webhook): create workspace sessions from GitHub events 2026-08-23 01:48:35 +08:00
BENCHMARK.md docs: make Web UI the primary onboarding path 2026-08-12 11:44:33 +08:00
BRAND_GUIDELINES.i18n.yaml docs: split brand guidelines into bilingual pair 2026-08-19 21:01:18 +08:00
BRAND_GUIDELINES.md docs: split brand guidelines into bilingual pair 2026-08-19 21:01:18 +08:00
BRAND_GUIDELINES.zh.md docs: split brand guidelines into bilingual pair 2026-08-19 21:01:18 +08:00
CLAUDE.md Initialize repo with README, AGENTS.md, and CLAUDE.md symlink 2026-06-10 22:58:56 +08:00
CONTRIBUTING.i18n.yaml docs(i18n): polish contribution greeting 2026-08-12 14:40:32 +08:00
CONTRIBUTING.md docs(i18n): refine contribution guide wording 2026-08-12 14:24:44 +08:00
CONTRIBUTING.zh.md docs(i18n): polish contribution greeting 2026-08-12 14:40:32 +08:00
knip.json feat(profiles): add the ACP application bundle 2026-08-23 10:59:00 +08:00
lefthook.yml fix(review): address source-run feedback 2026-08-11 11:22:08 +08:00
LICENSE Adopt MIT for DSH packages 2026-08-13 13:07:24 +08:00
package.json fix(build): raise host compiler heap ceiling 2026-08-23 01:48:35 +08:00
pnpm-lock.yaml feat(profiles): add the ACP application bundle 2026-08-23 10:59:00 +08:00
pnpm-workspace.yaml chore(subprocess-local): bump node-pty beta 2026-08-13 17:58:13 +08:00
pytest.ini Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose 2026-07-14 00:40:36 +08:00
README.i18n.yaml docs: add documentation website link 2026-08-21 15:33:48 +08:00
README.md docs: add documentation website link 2026-08-21 15:33:48 +08:00
README.zh.md docs: add documentation website link 2026-08-21 15:33:48 +08:00
THIRD_PARTY_NOTICES.md feat(webhook): create workspace sessions from GitHub events 2026-08-23 01:48:35 +08:00
tsconfig.base.client.json feat(client): inject public build environment 2026-08-19 18:21:26 +08:00
tsconfig.base.json feat(webhook): create workspace sessions from GitHub events 2026-08-23 01:48:35 +08:00
tsconfig.client.json feat(client): compose deployment branding through slots 2026-08-19 18:21:35 +08:00
tsconfig.host.json feat(profiles): add the ACP application bundle 2026-08-23 10:59:00 +08:00
tsconfig.json refactor(tsconfig): single root solution graph over host/client aggregates 2026-07-23 03:59:05 +08:00
tsdown.config.ts refactor: apply repository naming contract 2026-08-13 00:54:38 +08:00
vitest.config.ts feat(webworker): model-executed shell over nested worker processes 2026-08-21 20:35:32 +08:00
vitest.e2e.config.ts fix(typert): close remote gateway review gaps 2026-08-07 21:47:15 +08:00
vitest.shared.ts fix(typert): close remote gateway review gaps 2026-08-07 21:47:15 +08:00
vitest.snapshot.config.ts chore: remove remaining SDK toolchain residue 2026-08-11 16:37:29 +08:00
vitest.web-stress.config.ts test(web): add opt-in reasoning chunk stress lane 2026-08-04 14:37:31 +08:00
vitest.web.config.ts perf(ci): parallelize coverage and web snapshots in-job 2026-08-18 21:15:20 +08:00
vitest.web.perf.config.ts test: add opt-in web performance scenario 2026-08-04 14:23:34 +08:00

DeepSeek Harness

English | 中文

DeepSeek Harness (dsh) is an open-source agent harness developed by DeepSeek AI.

It uses an architecture where everything is a plugin, and is powered by Cordis, whose design is described in A Programming Paradigm for Spatiotemporal Composability.

Documentation: https://deepseek-harness.github.io/deepseek-harness/

Developer preview

DeepSeek Harness is currently in developer preview and is iterating rapidly. THERE WILL BE COMPATIBILITY-BREAKING CHANGES.

Run

Run from npm

Install Node.js, then run:

npx @deepseek-ai/dsh web

The command starts the Web UI at http://127.0.0.1:3080 by default and opens it in the default browser for a local launch. An SSH launch only prints the host URL because the SSH client or editor owns the local forwarded address. Pass --no-open to run the server without opening a browser. See Web UI guide.

Run from source

To run from a repository checkout:

git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web

pnpm run build prepares the repository artifacts. pnpm dsh web uses those built artifacts without rebuilding.

Community and support

Contributing

See CONTRIBUTING.md.

Development

Start with the development guide and architecture documentation.

For agents, follow AGENTS.md.

License

MIT

Third-party dependencies and their licenses are disclosed in THIRD_PARTY_NOTICES.md.