Messpunkte
- DeepSeek Harness ist ein Open-Source-Agent-Chassis. Die CLI heißt
dsh. Es ist kein DeepSeek-Modell und keine API-Preisliste. - Wir haben 0.1.5-rc.1 per
npx @deepseek-ai/dshgezogen (Node.js v24.14.1).dsh --helpnennt das Produkt einen geordneten Stapel von Plugin-Bundle-Patches. dsh --profile web --dump-default-configdruckte 152 Plugin-Zeilen. Standardmodell:deepseek-official/deepseek-flash. Web:127.0.0.1:3080. Default-Preset:standard.- Modelle liegen auf
ctx.llm, Tools aufctx.tools, die Schleife aufctx.agentLoop. Ein neues Modell ersetzt weder Bash noch die Schleife. - Developer Preview kündigt Breaking Changes an. Start: deepseek.com/harness, GitHub.
Trennen Sie Modell / Tool / Loop, bevor Sie dsh zum Alltags-Coding-Agent machen.
Was DeepSeek Harness ist
DeepSeek Harness ist DeepSeeks Open-Source-Agent-Runtime. Das README ist klar: Cordis macht alles zum Plugin — Modelladapter, Tool-Registry, Session-Log, Sandbox und die Agent-Schleife selbst lassen sich in der Konfiguration tauschen, ohne den Harness-Quellcode zu forken. Die Produktseite listet dieselben Flächen: Modelle, Tools, Skills, Sessions, Sandbox, Speicher, Loop, Scheduler, UI.
Der CLI-Name ist dsh. Das ist eine andere Suche als „Was kostet DeepSeek V4-Flash“. Das eine ist Inferenz, das andere das Chassis, das Modell, Tools und Session verdrahtet. Token-Kosten folgen weiter dem Anbieter; siehe DeepSeek V4-Flash API-Preise.
Offiziell ist es eine Developer Preview mit Kompatibilitätsbrüchen. Das Repo ging am 2026-08-13 öffentlich. Die Docs rechnen mit Plugin-Autoren. Dieser Text beantwortet nur, was es ist, wie die Teile komponieren und was die CLI wirklich druckte.
Was wir gemessen haben
Wer „gemessen“ schreibt, braucht Umgebung, Aufgaben, Methode und Rohausgabe. Das haben wir lokal ausgeführt — keine nacherzählte Marketing-Seite.
Umgebung: macOS (darwin 25.4.0), Node.js v24.14.1. Install: npx --yes @deepseek-ai/dsh, kein Source-Checkout. DSH_HOME zeigte auf ein isoliertes Verzeichnis, damit ~/.dsh unberührt blieb.
Aufgaben: (1) CLI-Hilfe und Version; (2) web-Hilfe; (3) Default-Baum des Web-Profils (keine User-Schicht, kein --patch). Wir haben keine volle Coding-Aufgabe mit API-Key gefahren und behaupten daher nicht, ein Repo gepatcht zu haben.
npx --yes @deepseek-ai/dsh --version # 0.1.5-rc.1 npx --yes @deepseek-ai/dsh --help npx --yes @deepseek-ai/dsh web --help export DSH_HOME="$PWD/.tmp_dsh_home" npx --yes @deepseek-ai/dsh --profile web --dump-default-config
dsh --help definiert das Produkt als geordneten Stapel von Plugin-Bundle-Patches unter Ihren Overrides. Zwei Familien zählen: web (Alias von --profile web) und plugin (reicht den Rest an pnpm im Profil weiter). Beispiele zeigen außerdem headless, --dump-config und --from-default-profile.
dsh web --help entspricht den Docs: --host, --port (0 wählt das OS), --no-open, --trusted-host. Im Baum defaultet webserver auf 127.0.0.1 und 3080.
| Punkt | Gemessener Wert | Beleg |
|---|---|---|
| npm-Version | 0.1.5-rc.1 | dsh --version |
| Default-Modell | deepseek-official / deepseek-flash | agent-default-model |
| Web-Bind | 127.0.0.1:3080 | webserver |
| Default-Preset | standard | agent-presets |
| Default-Baum | 539 YAML-Zeilen / 152 IDs | --dump-default-config |
| disabled | 26 Zeilen (meist tool-*) | derselbe Dump |
Die 26 disabled: true-Zeilen sind vor allem modellseitige Tools (tool-bash, tool-fs, tool-skill, tool-web). dsh-web-app schaltet sie aus, bis Workspace oder Preset sie wieder anmacht. Grau im Dump heißt nicht „kein Bash in der Web-UI“. Marketingseiten lassen das weg.
Wie Modell, Tools und Loop zusammenkommen
Die Architekturdoku beschreibt ein laufendes dsh als Plugin-Baum, der beim Boot gestapelt wird. Im Alltag fassen Sie vier Dinge an:
- Profil: benannte Komposition unter
$DSH_HOME/profiles/<name>. Mitgeliefert:web,headless,sdk,sdk-minimal,acp. - Bundle: npm-Paket mit
dsh.bundle, das einen Patch liefert. Die erste Init legt@deepseek-ai/dsh-baseunten. - Plugin-Modul: TypeScript mit
apply(ctx). Adapter:ctx.llm.registerAdapter(); Tools:ctx.tools; Loop:ctx.agentLoop. - Reihenfolge: Bundle-Patches →
cordis.patch.ymldes Profils → Home-Patch →--patch.
| Schicht | Was Sie anfassen | Was Sie tauschen | Nicht verwechseln |
|---|---|---|---|
| Modell | Settings → Models oder $DSH_HOME/settings.yaml | Offizielle Karte, Kataloganbieter, eigenes Gateway | Ein neues Modell ersetzt Bash nicht |
| Tools | Preset / DSH_TOOLS_MODE / Tool-Plugins | Voller Standardsatz, Minimalpaar, eigene Registrierung | Schemas landen im Prompt; der Modellkatalog ist ein anderes Buch |
| Loop | Default dsh-agent-loop, ersetzbar | Ein anderes Loop-Plugin | Die meisten Produkte hartcodieren den Loop; dsh nicht |
| Einstieg | dsh web / headless / sdk / acp | Dieselbe CLI, anderes Profil | Kein zweites Binary erfinden |
Offizielle Installation eines Fremdplugins: dsh plugin --profile web add <Paket oder git>. dsh plugin --profile web --help druckte uns wörtlich die pnpm-Hilfe — „an pnpm weiterreichen“ ist keine Metapher. Lokal: dsh web --patch ./cordis.yml (erstes Plugin). Öffentliche Repos mit dsh-plugin taggen.
Die offizielle DeepSeek-Karte legt einen write-only-Key in $DSH_HOME/.credentials.yaml. Ein Custom-Gateway braucht eine kleingeschriebene Provider-ID, Base-URL und ein Protokoll (openai-completions, openai-responses oder anthropic-messages). Die Provider-ID ist dauerhaft. Ein gültiger Key kann trotzdem 400 liefern: Reasoning-Modelle schicken den Systemprompt als Rolle developer und das Limit als max_completion_tokens. Offizieller Fix: compat.supportsDeveloperRole: false und maxTokensField: max_tokens in settings.yaml. Details: Configure models.
Die Web-UI sperrt den Composer, bis ein Workspace gewählt ist. Vorgeschlagener erster Prompt: „Fasse dieses Repository zusammen.“ Siehe Use the Web UI. Skills sind prozedurales Gedächtnis, kein dsh-Plugin; siehe Hermes Agent Skills.
Welche der vier Modi
Die Produktseite listet vier Modi. Unser Dump defaultet auf standard. Die anderen drei sind offizielle Beschreibungen — wir nennen sie nicht „gemessen“.
| Modus | Was die Docs liefern | Wann nutzen | Nicht erwarten |
|---|---|---|---|
| Standard | Edit, Shell, Suche, Skills, Plan, Ziele, Subagenten, Workflows | Täglicher Coding-Agent | Wählt nicht Ihren Modellpreis |
| PTC | Standard plus Code-Mode-SDK — das Modell schreibt TypeScript, um Tools zu ketten | Lange Tool-Ketten | Falsche Gateway-Form scheitert trotzdem |
| Minimal | Persistentes Bash + str_replace_editor | Kleinste Tool-Bank für ein Modell | Kein voller Such-/Workflow-Satz |
| Create | Standard plus Runtime-Inspektion, In-Memory-Plugins, neue Presets | Sie schreiben eine Komposition | Preview-APIs wandern |
Rechte sind ein eigenes Trio im permission-Plugin: read-only, workspace-write (Default, Override DSH_PERMISSION_MODE), danger-full-access. Standard heißt nicht „ganze Platte schreiben“.
dsh gegen Claude Code / Hermes
Sehen Sie dsh als abschraubbares Chassis, dann wird die Wahl kürzer.
- Austauschbare Modelle, Tools, Loop — und Sie schreiben Plugins: DeepSeek Harness. Version in Preview pinnen.
- Produktisierter Coding-Agent mit Abo-Rechnung: bei Claude Code 2026 Preise starten. dsh kopiert diesen Checkout nicht.
- Skills-/Gateway-Gedächtnis: Hermes liegt näher. dsh hat
dsh-skill, aber der Filesystem-Skill ist im Default-Dump aus. - Sie laufen schon MCP: das Protokoll bleibt eine eigene Schicht — MCP-Entwicklerleitfaden. Docs behandeln dsh als MCP-Client, nicht als Ersatz.
Drittanbieter erwähnen optionale Bundles, die an Claude Code oder Codex delegieren. Unser Default-Web-Dump listet subagent-claude-code nicht. Das ist also nicht out of the box. Schichtungen: 2026 AI-Agent-Stack.
FAQ
Ist DeepSeek Harness dasselbe wie ein DeepSeek-Modell?
Nein. Der Harness ist Runtime, das Modell Inferenz. Die Default-Route ist offizielles DeepSeek, aber Sie können OpenAI, Anthropic oder ein eigenes Gateway ergänzen. Sie zahlen den gewählten Anbieter.
Installation und Web-Port?
Offiziell: npx @deepseek-ai/dsh web. Wir sahen 0.1.5-rc.1 und 127.0.0.1:3080. Über SSH --no-open. Aus dem Repo: pnpm install && pnpm run build && pnpm dsh web.
Wie kombinieren sich Modelle und Tools?
Ein Profil stapelt Bundles; Bundles fügen Plugins per Patch ein. Modelle: ctx.llm, Tools: ctx.tools, Loop: ctx.agentLoop. Eigenen Baum: dsh --profile web --dump-config.
Welchen der vier Modi?
Alltag: Standard (Default). Modell benchmakren: Minimal. Lange Tool-Ketten: PTC. Presets schreiben: Create. Namen können in Preview wandern.
Preview in Produktion?
Offiziell erwarten Sie Brüche. Isoliertes DSH_HOME, gepinnte npm-Version. Kein ungepinntes npx auf der Maschine mit Produktionszertifikaten.
Kurzfassung
DeepSeek Harness beantwortet, wie Sie ein Agent-Chassis abschrauben — nicht, wo DeepSeek auf einer Modelltafel steht. Harte Fakten aus 0.1.5-rc.1: 152 Plugins im Default-Web-Baum, Flash als Default, Port 3080, Preset=standard. Komposition ist Profil → Bundle → Adapter / Tool-Registry / Loop, kein eingefrorenes Binary.
dsh auf einem Mac, der den Deckel nicht schließt
dsh web will einen langlebigen Node-Prozess, eine Workspace-Platte und API-Keys. Klappen Sie ein Notebook zu, sterben Session, Subagenten und Trajectory-Replay gemeinsam. Ein Cloud-Mac-mini ist der sauberere Host: dsh web --no-open per SSH, DSH_HOME und Workspace auf derselben Box, Produktionszertifikate woanders. Erst workspace-write, Tagesmiete prüfen, dann den Monat festziehen.
Optionen vergleichen · Tarife · Onboarding-Checkliste · Starten