diff --git a/README.md b/README.md
index e2923b7..52d71b0 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,11 @@
---
-> Unofficial tool. Not affiliated with DeepSeek.
+> Unofficial tool. Not affiliated with DeepSeek. Also not the same thing
+> as [dsh](https://github.com/deepseek-ai/deepseek-harness), DeepSeek's
+> official agent harness — dsh runs agents and executes tools; this is
+> the API client underneath: one request, its cost, and the docs, from a
+> shell.
DeepSeek serves the same two models through four different wire formats —
OpenAI chat, OpenAI Responses, Anthropic Messages, and FIM. Every other
@@ -387,7 +391,11 @@ Honest limits:
## For agents
Built to be scripted. See [AGENTS.md](AGENTS.md) for the full contract
-and [skill/SKILL.md](skill/SKILL.md) for a drop-in agent skill.
+and [skill/SKILL.md](skill/SKILL.md) for a drop-in agent skill. The skill
+is an Anthropic-format `SKILL.md` bundle — the same format
+[dsh](https://github.com/deepseek-ai/deepseek-harness) reads from
+`~/.agents/skills` and `ds docs changelog.
DeepSeek released DeepSeek Harness:
+deepseek-ai/deepseek-harness
+on GitHub, @deepseek-ai/dsh on npm, dsh in the
+shell, MIT. It is a developer preview and says so in capitals –
+“THERE WILL BE COMPATIBILITY-BREAKING CHANGES” – and the
+architecture is the pitch: everything is a plugin, on the
+Cordis runtime. One
+command starts it:
npx @deepseek-ai/dsh web # Web UI at http://127.0.0.1:3080
+
+The document worth reading twice is
+CONTRIBUTING.md.
+The official repository takes no external pull requests (“we are
+sorry that we cannot accept external pull requests at the moment”),
+and there is no plugin marketplace and no registry. Discovery is a GitHub
+topic: tag your repository
+dsh-plugin
+and that is the catalogue. DeepSeek's framing of its own repo: “an
+idea, an official showcase, and a source of inspiration, but not a
+mandate”. The ecosystem's official badge is shields.io in the brand
+blue, #4D6BFE:
dsh skills are SKILL.md directory bundles, the format
+Anthropic's agent skills established, and the local provider reads them
+from <project>/.agents/skills and
+~/.agents/skills as well as its own .dsh/skills
+roots. A skill already written for Claude Code drops in front of dsh
+unchanged – including this
+CLI's own skill, which teaches any harness to drive
+deepseek for key checks, cost accounting and offline docs.
+That is also the honest one-line comparison with Claude Code:
+dsh is the model vendor's own harness, open source and plugin-first, with
+the batteries left to the community rather than included.
Different layer, same API. dsh is the agent harness: it +runs the loop, executes the tool calls, manages plugins and sessions, and +serves a UI. deepseek-cli is the API client: it sends one +request in any of DeepSeek's four wire +formats, prints the response and what it cost, and carries DeepSeek's +API documentation in the binary. This tool deliberately does not execute +tool calls and is not becoming a harness – that line is a +recorded decision, and it just +got easier to hold, because the official answer to “run an agent on +DeepSeek” now exists.
+What it changes here: nothing in the tool. The pairing
+writes itself: dsh runs the agent, and this CLI is what you reach for
+underneath it – ds check when a key misbehaves,
+ds tokens and the ledger to price
+a workload, ds docs ask when you need the API's own text
+rather than a model's memory of it.
The launch table is DeepSeek's own. This is what
people running deepseek-v4-pro-0813 in real harnesses said in the
diff --git a/site/llms.txt b/site/llms.txt
index d74b7e8..39748b0 100644
--- a/site/llms.txt
+++ b/site/llms.txt
@@ -25,7 +25,7 @@ response body unmodified. Exit codes: 0 ok, 1 error, 2 auth, 3 no balance,
- [Formats](https://thevibeworks.github.io/deepseek-cli/formats/): DeepSeek's four wire formats compared: auth, thinking controls, tool support, Claude model remapping, and the token-accounting convention that differs between them
- [Cost](https://thevibeworks.github.io/deepseek-cli/cost/): the rate card, what the context cache is worth, the thinking surcharge and how it varies by effort level, the local usage ledger, and the caveats on every figure
- [Benchmarks](https://thevibeworks.github.io/deepseek-cli/bench/): how deepseek-v4-pro (GA 0813) and v4-flash score against Kimi K3, GLM-5.2, Claude Opus 4.8 and Fable 5 on the agent suites (DeepSeek's own launch chart, with caveats), what the GA checkpoint changed over the preview, and the DeepSeek kill line (斩杀线) economics idea with the price gap to GPT-5.6
-- [News](https://thevibeworks.github.io/deepseek-cli/news/): what is changing in the DeepSeek API: the price rise announced 2026-08-06 with no effective date yet, the 2x peak-hour pricing policy (also undated), V4-Flash's official release, and what each does to the cost of a call
+- [News](https://thevibeworks.github.io/deepseek-cli/news/): what is changing around the DeepSeek API: DeepSeek shipping dsh (DeepSeek Harness, its official agent harness) and how it relates to this CLI, the price rise announced 2026-08-06 with no effective date yet, the 2x peak-hour pricing policy (also undated), V4-Flash's official release, and what each does to the cost of a call
- [Agents](https://thevibeworks.github.io/deepseek-cli/agents/): the scripting contract: output streams, JSON response shapes per format, exit-code semantics, retry behaviour
- [Playground](https://thevibeworks.github.io/deepseek-cli/playground/): the DeepSeek API in a browser with no API key: all four wire formats, streaming, and the equivalent deepseek command for every request
@@ -39,6 +39,8 @@ response body unmodified. Exit codes: 0 ok, 1 error, 2 auth, 3 no balance,
- Text only: image, document and search-result content blocks are rejected in every format
- Tool calls are printed, never executed
- A free tier exists: `deepseek free` enrols with a proof-of-work puzzle instead of a signup, then relays through a gateway run by the project. Flash only, 30 requests and 20K output tokens per UTC day, 4K output per call. A pro request is refused rather than downgraded. Prompts transit the gateway; token counts and cost are recorded, prompts and completions are not
+- Not the same tool as dsh: dsh (DeepSeek Harness, github.com/deepseek-ai/deepseek-harness, npm @deepseek-ai/dsh) is DeepSeek's official open-source agent harness that runs agent loops and executes tools; deepseek-cli is an unofficial API client for one-shot requests, cost accounting and offline docs. Complementary, not competing: run agents with dsh, debug keys, wire formats, costs and docs with deepseek-cli
+- Skills interop with dsh: dsh skills are Anthropic SKILL.md-compatible directory bundles read from ~/.agents/skills and