Files
deepseek-harness/examples
Tianyi Cui 2c03b2bc29 feat: surface the run_code program in the ACP tool-call card
The generated program rode only rawInput — the detail/expanded slot
many ACP clients never open — so the code a run executed was invisible
in the UI stream. presentCall now also carries it as a fenced ts block
in the card's content, which the bridge already forwards as tool_call
content. The two code-mode snapshot goldens are re-recorded live and
replay green; the presentation unit test pins the fenced block.
2026-07-09 20:56:44 +08:00
..

Examples

Runnable demos (not workspaces) that showcase how the harness is wired. Each example is now a thin leaf: a cordis.yml that picks the swappable backends (an LLM adapter, a bash executor), loads ONE app package, and may add optional product tools or demo-only mocks. The composition — the spine, the front-door cluster, and the boot glue — lives in the app packages (@deepseek-ai/dsh-stdio-agent, @deepseek-ai/dsh-acp-agent) and the @deepseek-ai/dsh-agent-core bundle they share. There is no start.ts; the demo:* scripts invoke each app package's bin.

echo-agent

A mock model + echo tool on the stdio chat app — the all-mock skeleton. The leaf swaps dsh-stdio-agent's LLM backend to a local mock-echo adapter and adds a local echo tool. Demonstrates:

  • A thin leaf cordis.yml loading the @deepseek-ai/dsh-stdio-agent app
  • Registering a mock LlmAdapter (streaming scripted responses)
  • Registering a tool via ctx.tools.register()
  • "Swap the backend, keep the app" — the only difference from coding-agent is the adapter

Run with: pnpm run demo:echo. When prompted, type "echo " to trigger a tool call round-trip.

coding-agent

A REPL agent demo: DeepSeek V4 + the read/write/edit filesystem tools + the bash tool suite, subagent delegation, and the todo_write task tracker on the same @deepseek-ai/dsh-stdio-agent app. The UI is a terminal readline REPL.

Run with: pnpm run demo:repl (needs DEEPSEEK_API_KEY in the environment or a gitignored repo-root .env). See coding-agent/README.md for details.

Its code-mode.cordis.yml overlay flips the same tree to Code Mode: the worker-thread code runtime is loaded and the tool registry runs mode: code, so the model gets exactly one wire tool — run_code — plus a generated TypeScript SDK section, and composes the other tools by writing a program whose output it curates. Run with: pnpm run demo:code-mode (the REPL is the default UI; acp as the argument serves the acp-agent example's same-shaped overlay instead) — see the Code Mode section for what to try.

acp-agent

An agent demo exposed as an Agent Client Protocol (ACP) server over JSON-RPC stdio, via the @deepseek-ai/dsh-acp-agent app — drive it from Zed or any other ACP client. Also the home of the keyless snapshot tests.

Run with: pnpm run demo:acp (needs DEEPSEEK_API_KEY); pnpm run demo:code-mode acp boots the same server in Code Mode via the code-mode.cordis.yml overlay. See acp-agent/README.md for the Zed setup and the snapshot-test design.