2nd dokployH
Find a file
2026-07-23 03:55:32 +08:00
.agents refactor(gui): move the snapshot-store engine into the client runtime 2026-07-23 03:30:06 +08:00
.claude docs: accuracy sweep, architecture restructure, two ADRs, review skill 2026-06-13 22:05:34 +08:00
.github ci: remove critical setup variance 2026-07-22 20:29:33 +08:00
apps Merge remote-tracking branch 'origin/master' into worktree/web-bind-address 2026-07-22 21:51:05 +08:00
bin feat(cli): dsh CLI with personal config overlays from ~/.config/dsh 2026-07-22 14:29:28 +08:00
docs refactor(gui): slot system standard — single register, four props shares, framework store seat 2026-07-23 03:25:11 +08:00
examples Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master 2026-07-22 23:17:02 +08:00
native docs(landlock-run): align source and release guidance 2026-07-20 12:25:43 +08:00
packages ci: fix jsdoc & coverage 2026-07-23 03:55:32 +08:00
python Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master 2026-07-22 22:38:17 +08:00
scripts Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master 2026-07-22 23:17:02 +08:00
skills/create-dsh-sdk-project Remove the stdio agent 2026-07-20 19:26:04 +08:00
vendor chore: extract vendored Cordis hot-reload fix 2026-07-22 17:30:45 +08:00
website Merge latest master through rfc/pty into feature/persistent-pty-sessions 2026-07-22 21:21:58 +08:00
.editorconfig Declare LF and final-newline conventions in .editorconfig 2026-07-15 16:09:12 +08:00
.gitattributes Pin LF working trees via .gitattributes 2026-07-15 16:09:12 +08:00
.gitignore feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
.gitlab-ci.yml python: derive release version from repository 2026-07-13 17:49:01 +08:00
.jscpd.json chore: tighten TypeScript duplication lint 2026-07-14 00:24:04 +08:00
AGENTS.md Merge refreshed rfc/pty into feature/persistent-pty-sessions 2026-07-22 21:12:16 +08:00
CLAUDE.md Initialize repo with README, AGENTS.md, and CLAUDE.md symlink 2026-06-10 22:58:56 +08:00
eslint.config.mjs Merge latest master into tui-staging-merge-1 2026-07-22 20:45:24 +08:00
knip.json ci: fix jsdoc & coverage 2026-07-23 03:55:32 +08:00
lefthook.yml chore: keep local git hooks fast 2026-07-22 16:37:20 +08:00
LICENSE Initialize repo with README, AGENTS.md, and CLAUDE.md symlink 2026-06-10 22:58:56 +08:00
package.json Merge branch 'master' into worktree/run-all-gates 2026-07-22 21:10:45 +08:00
pnpm-lock.yaml refactor(gui): move the snapshot-store engine into the client runtime 2026-07-23 03:30:06 +08:00
pnpm-workspace.yaml Merge latest master through rfc/pty into feature/persistent-pty-sessions 2026-07-22 21:21:58 +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: regenerate catalogs, graphs, and the README pairing record after the rebase 2026-07-22 14:30:01 +08:00
README.md Retire the readline front door and the repl-agent example 2026-07-22 14:29:27 +08:00
README.zh.md Retire the readline front door and the repl-agent example 2026-07-22 14:29:27 +08:00
tsconfig.base.json refactor(gui): move the snapshot-store engine into the client runtime 2026-07-23 03:30:06 +08:00
tsconfig.build.json Merge updated rfc/pty into feature/persistent-pty-sessions 2026-07-22 22:43:20 +08:00
tsconfig.client.json feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
tsconfig.json Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master 2026-07-22 23:17:02 +08:00
tsconfig.vitest.json feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
tsdown.config.ts fix(build): exclude Vite app from package bundling 2026-07-22 21:03:37 +08:00
vitest.config.ts ci: fix jsdoc & coverage 2026-07-23 03:55:32 +08:00
vitest.e2e.config.ts feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
vitest.snapshot.config.ts Merge remote-tracking branch 'origin/codex/invariant-service-seam' into codex/invariant-package-registration-gate 2026-07-20 00:35:06 +08:00
vitest.web.config.ts feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00

DeepSeek Harness

English | 中文

The DeepSeek Harness SDK is a plugin-based SDK for building agent harnesses.

Install

Install the dsh coding agent with one line — it needs git and Node ^22.19 || >=24, and offers to install pnpm if it is missing:

curl -fsSL https://raw.githubusercontent.com/deepseek-harness/deepseek-harness/master/scripts/install.sh | sh

It clones the harness to ~/.dsh/source, runs pnpm install, symlinks dsh into ~/.local/bin (offering to add it to your PATH), prompts once for your DEEPSEEK_API_KEY, and launches dsh; re-running it updates an existing checkout. Run from inside a checkout (sh scripts/install.sh) it reuses that checkout and skips the clone. The overridable DSH_* variables are documented in scripts/install.sh.

Development

This monorepo is built on the Cordis framework (vendored as source under vendor/), microkernel-style: everything is a plugin.

pnpm install
pnpm run test          # vitest
# Agent demos require DEEPSEEK_API_KEY.
pnpm run demo:tui      # full-screen TUI coding agent
pnpm run demo:headless "task" # one-shot coding agent
pnpm run demo:cordis   # self-referential agent demo
pnpm run demo:acp      # ACP server agent demo

For humans, start with the development guide for local setup, hooks, environment variables, and quality gates, then read the architecture design and documentation graph index before package work. Local context lives in packages/ and vendor/.

For agents, follow AGENTS.md.