2nd dokployH
Find a file
Yichen Jiang db14361372 test(web): scope the aria age normalizer to the region that needs it
Collapsing every relative-time bucket to `{{age}}` reached the session-tree
goldens, where a literal age is the assertion: a fresh row reads `now` and an
older one does not. Six e2e files failed, two of them by aborting mid-scenario
and leaving their replay fixtures half-consumed.

`captureStableAria` now takes the rule as an opt-in, and only the reference
menu — whose rows are dated from the live Host list — asks for it.

Refs #3154
2026-08-27 12:10:52 +08:00
.agents fix(web): date @ session rows by last activity, not creation 2026-08-27 11:50:52 +08:00
.claude
.github ci(build-exe): drop pull_request label trigger to avoid skipped checks (#3049) 2026-08-26 17:52:34 +08:00
apps test(web): scope the aria age normalizer to the region that needs it 2026-08-27 12:10:52 +08:00
docs fix(web): date @ session rows by last activity, not creation 2026-08-27 11:50:52 +08:00
native docs: trim CoT leakage from post-purge prose 2026-08-22 20:35:11 +08:00
packages fix(web): date @ session rows by last activity, not creation 2026-08-27 11:50:52 +08:00
patches chore(subprocess-local): bump node-pty beta 2026-08-13 17:58:13 +08:00
python docs: rebuild the documentation skill and standards (#2983) 2026-08-25 23:47:20 +08:00
scripts feat(api): serve settings through Remote controllers 2026-08-27 03:00:49 +08:00
snapshots feat(web): polish the input trigger menu presentation 2026-08-26 21:17:46 +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 fix(docs): harden build output cleanup 2026-08-26 14:33:17 +08:00
.editorconfig
.gitattributes feat(i18n): compose pairing records during merges 2026-08-08 21:11:59 +08:00
.gitignore feat(python-runtime): package the dsh CLI and profile assets 2026-08-24 17:28:26 +08:00
.gitlab-ci.yml fix(python): make Windows release paths native 2026-08-24 19:09:40 +08:00
.jscpd.json
.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 refactor(session): require known event types on read 2026-08-26 00:22:31 +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
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(workspace-controller): expose directory picking through Remote 2026-08-27 02:20:38 +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(docs): make site builds idempotent 2026-08-26 13:09:53 +08:00
pnpm-lock.yaml fix(web): date @ session rows by last activity, not creation 2026-08-27 11:50:52 +08:00
pnpm-workspace.yaml Merge commit '80d68a54120fc87e6b354e41562a9fbfd6874e48' into codex/product-subagent-runtime-refresh-codex 2026-08-25 19:42:47 +08:00
pytest.ini
README.i18n.yaml docs: rebuild the documentation skill and standards (#2983) 2026-08-25 23:47:20 +08:00
README.md docs: rebuild the documentation skill and standards (#2983) 2026-08-25 23:47:20 +08:00
README.zh.md docs: rebuild the documentation skill and standards (#2983) 2026-08-25 23:47:20 +08:00
SAFETY.i18n.yaml Merge pull request #2560 from deepseek-harness/codex/add-security-policy 2026-08-23 11:10:52 +08:00
SAFETY.md Merge pull request #2560 from deepseek-harness/codex/add-security-policy 2026-08-23 11:10:52 +08:00
SAFETY.zh.md Merge pull request #2560 from deepseek-harness/codex/add-security-policy 2026-08-23 11:10:52 +08:00
THIRD_PARTY_NOTICES.md test(ui-input-trigger): cover the onHover slot wiring; restore master's notices 2026-08-26 22:10:58 +08:00
tsconfig.base.client.json feat(client): inject public build environment 2026-08-19 18:21:26 +08:00
tsconfig.base.json feat(api): serve settings through Remote controllers 2026-08-27 03:00:49 +08:00
tsconfig.client.json fix(team): isolate browser remote adapter 2026-08-26 10:56:57 +08:00
tsconfig.host.json feat(api): serve settings through Remote controllers 2026-08-27 03:00:49 +08:00
tsconfig.json refactor(repo): retire top-level examples 2026-08-24 22:02:44 +08:00
tsdown.config.ts refactor: apply repository naming contract 2026-08-13 00:54:38 +08:00
vitest.config.ts test(webworker-runtime): drop coverage requirement and compile transform suites 2026-08-26 12:35:04 +08:00
vitest.e2e.config.ts refactor(repo): retire top-level examples 2026-08-24 22:02:44 +08:00
vitest.expected.config.ts refactor(repo): retire top-level examples 2026-08-24 22:02:44 +08:00
vitest.shared.ts fix(typert): close remote gateway review gaps 2026-08-07 21:47:15 +08:00
vitest.snapshot.config.ts fix(test): use expected-output naming 2026-08-24 21:37:14 +08:00
vitest.web-stress.config.ts
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 fix(history): adapt packed pages to session journal 2026-08-25 20:10:43 +08:00

DeepSeek Harness

English | 中文

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

It is built on an everything-is-a-plugin architecture and 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 in developer preview and iterating rapidly. THERE WILL BE COMPATIBILITY-BREAKING CHANGES.

Review the safety notice before running the project.

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.