KI-Entwicklung ·

DeepSeek Harness dsh Installation: Web-UI, Headless und AI-Coding-Praxis

Nachttisch mit MacBook: links eine schwarze Lampe, Bildschirm geteilt in Terminal und dsh-Arbeitsfläche

dsh kann die offizielle Agent-Coding-Runtime von DeepSeek bereits starten; im September 2026 bleibt sie ein developer preview. Öffnen Sie zuerst die Web-UI in einem isolierten Verzeichnis oder bringen Sie eine schreibgeschützte Headless-Aufgabe durch — lassen Sie sie nicht gleich das ganze Projekt umbauen.

Das Repository heißt deepseek-ai/deepseek-harness, die CLI dsh. Sie bündelt Sitzungen, Tools, Rechte und Arbeitsfläche zu einer Runtime. In 30 Minuten sehen Sie, ob sie auf Ihrer Maschine steht. Ausprobieren lohnt sich; als produktiven Coding-Agenten sollten Sie sie jetzt nicht behandeln.

Was ist DeepSeek Harness dsh?

DeepSeek Harness ist das von DeepSeek veröffentlichte Agent-Laufzeit-Framework, MIT-Lizenz, Kommandozeile dsh. Die Produktseite sagt: Modell, Tools, Skills, Sitzungen, Sandbox, Speicher, Schleife und UI sind austauschbare Plugins; darunter liegt Cordis, Motto Everything is a plugin. (deepseek.com/harness)

Wer „Was ist DeepSeek Harness“ sucht, muss drei Dinge trennen — nicht noch einmal das Funktionsaufruf-Protokoll hören.

Die API ist der Motor, dsh die Runtime mit Lenkrad, Werkzeugkasten und Fahrlogik. Eine eigene while-Schleife gegen chat/completions ist ein anderer Weg; der August-Text DeepSeek Harness AI Agent: Entwicklungsleitfaden beschreibt die selbst gebaute Schleife. Hier nehmen wir nur den offiziellen Starter ab: Installation, wo das Web lauscht, wann die erste Coding-Aufgabe gilt.

Ansatz Zuständig für Für wen
DeepSeek API Modell, Tool Calling Wer den Agent selbst baut
dsh Runtime, Tools, Sitzungen, Rechte, UI Wer den offiziellen Agent direkt starten will
Eigene Agentenschleife Eigene Zyklusarchitektur Wer die Architektur vollständig steuern will

Die Site listet mehrere Laufmodi. Beim ersten Mal reicht die Web-UI von Standard: voller Coding-Agent, Dateien ändern, Shell, Suche. Code-Modus lässt das Modell darüber hinaus mehrstufige Tool-Aufrufe in TypeScript orchestrieren — erst wenn 3080 stabil ist. Minimal lässt fast nur bash und Editor; gut zum Modellvergleich, nicht als Alltag-IDE. Creator dient zum Inspizieren der Runtime und zum Plugin-Test; die erste Stunde können Sie überspringen.

Was brauchen Sie vor der Installation von dsh?

Der Null-Install-Pfad im offiziellen README sind zwei Sätze: Node.js installieren, dann npx @deepseek-ai/dsh web. Community-Texte nennen Node ^22.19.0 oder >=24.0.0; maßgeblich ist, ob Ihr lokales npx @deepseek-ai/dsh zieht. Senken Sie System-Node nicht, nur um einen Blogpost zu treffen.

Schlüssel löst die CLI so auf: Prozessumgebung → ~/.dsh/.credentials.yaml.env im aktuellen Verzeichnis → ~/.dsh/.env. Beim ersten Mal eine Quelle, nicht vier widersprüchliche Kopien:

zsh
export DEEPSEEK_API_KEY=sk-Ihr-Schlüssel
mkdir -p ~/.dsh
printf 'DEEPSEEK_API_KEY=sk-Ihr-Schlüssel\n' >> ~/.dsh/.env
chmod 600 ~/.dsh/.env

Der offizielle Adapter heißt deepseek-official und geht standardmäßig über das offizielle Modell-Routing. Einen eigenen Gateway anzubinden ist Schritt zwei; prüfen Sie zuerst, ob OmniRoute in der Praxis überhaupt nötig ist. In der ersten Stunde die Base URL nicht wechseln.

Die CLI nimmt das Verzeichnis, in dem Sie den Befehl ausführen, als Standard-Workspace. Legen Sie ein leeres Repo oder eine Kopie an, etwa ~/work/dsh-first-run. SAFETY.md empfiehlt minimale Rechte und bevorzugt eine wegwerfbare VM, einen Container oder eine eigene Umgebung. Schlüssel und Isolierverzeichnis nicht bereit — dann noch kein npx: eine Oberfläche, die Sie nicht steuern, ist schlimmer als ein fehlgeschlagener Start.

Erster Lauf
  • Eigener Workspace, nicht $HOME und kein Produktiv-Repo
  • Erste Aufgabe nur lesen; Standardrechte, kein danger-full-access
  • Schlüssel nur in der Umgebung oder in ~/.dsh/.env; ~/.dsh/sessions/ behalten, um Aufrufe nachzuvollziehen
Weiterhin developer preview
Es kann Befehle ausführen, Dateien ändern und Plugins laden. Beim ersten Mal leeres Repo oder eigene Maschine. Offizielle Hinweise: SAFETY.md.

Wie installieren Sie DeepSeek Harness und öffnen die Web-UI?

Beim ersten Mal müssen Sie nicht clonen. Ins isolierte Verzeichnis:

zsh
cd ~/work/dsh-first-run
npx @deepseek-ai/dsh web

Das ist der Installations-Einstieg im offiziellen README. dsh web ist Alias für --profile web; beim ersten Mal wird ~/.dsh/profiles/web/ aus einer Vorlage angelegt. Standard ist die Arbeitsfläche unter http://127.0.0.1:3080; lokal öffnet sich zusätzlich der Standardbrowser. Über SSH wird nur die Host-URL gedruckt, die lokale Weiterleitung macht der SSH-Client oder der Editor. In der Preview ändern sich Befehle; maßgeblich sind README und CLI-Hinweise von deepseek-ai/deepseek-harness am jeweiligen Tag.

Häufige Parameter
npx @deepseek-ai/dsh web --no-open
npx @deepseek-ai/dsh web --port 8080

Standard bindet nur Loopback. Remote-UI über SSH-Local-Forward; am ersten Tag die Oberfläche nicht ins LAN legen. Im offiziellen User Guide wählen Sie den Workspace in der Web-UI per Verzeichniswähler, nicht über eine CLI-Flagge. Nach dem Öffnen von 3080 prüfen Sie, dass das aktuelle Verzeichnis das isolierte Repo ist, bevor Sie eine Aufgabe schicken.

Konfiguration liegt unter ~/.dsh/: das Home-Verzeichnis die Runtime selbst anlegen lassen; sessions/ zum Nachvollziehen der Tool-Aufrufe; .env nur Schlüssel, Rechte 600; profiles/web/ am ersten Tag nicht per Hand patchen.

Drei Fälle rechtfertigen einen Clone: einem bestimmten Commit folgen, Plugins ändern, oder npx zieht das Paket nicht und Sie brauchen die Build-Artefakte. Dann git clone des offiziellen Repos, pnpm install, pnpm run build, pnpm dsh web. pnpm dsh web nutzt die Artefakte und baut nicht erneut. Im Quellbaum AGENTS.md folgen; Demo-Befehle nicht in Produktionsskripte kopieren.

Wie nutzen Sie dsh Headless?

dsh run ist entfernt. Einmalaufgaben gehen über headless: neue Sitzung, letzter nicht leerer Assistententext auf stdout, dann Exit.

zsh
cd ~/work/dsh-first-run
npx @deepseek-ai/dsh --profile headless "Listen Sie die Dateinamen im aktuellen Verzeichnis auf und ändern Sie keine Dateien"

Das ist die erste Praxis, die ins Notizbuch gehört: Exit-Code, ob stdout eine Endantwort hat, ob ~/.dsh/sessions/ einen nachvollziehbaren Log angelegt hat. Die Aufgabe muss nur lesen. Offiziell gibt es noch Profile sdk / sdk-minimal / acp für JSON-RPC oder ACP aus einem anderen Prozess — Woche zwei, nicht parallel in der ersten Stunde.

Wie nutzen Sie DeepSeek Harness für AI Coding?

Wenn Web oder Headless sprechen, heißt das noch nicht „es darf das Repo umbauen“. Laut offizieller Standard-Fähigkeit kann es Dateien ändern, die Shell ausführen, suchen und Sub-Agenten starten; Preview plus ein Modell, das Befehle schreibt, verlangt eine erste Coding-Aufgabe, die Sie gegen git diff halten. Das ist kein Benchmark, sondern die Frage, ob dsh in Ihrem Verzeichnis eine Funktion richtig ändert.

Legen Sie ein kleines Repo an, bei dem Sie richtig und falsch selbst sehen: greet.ts gibt absichtlich hi Ada zurück, der Test erwartet Hello, Ada. Sie brauchen nicht, dass das Modell „überzeugend klingt“.

zsh
mkdir -p ~/work/dsh-first-run && cd ~/work/dsh-first-run
git init
printf '%s\n' 'export function greet(name: string): string {' '  return "hi " + name' '}' > greet.ts
printf '%s\n' 'import { greet } from "./greet.ts"' 'if (greet("Ada") !== "Hello, Ada") {' '  throw new Error("unexpected greeting")' '}' > greet.test.ts
git add . && git commit -m "chore: isolated dsh first-run repo"
  1. Nur lesen: Lesen Sie greet.ts und greet.test.ts und erklären Sie, warum der Test fehlschlägt. Ändern Sie keine Dateien. Bestanden: Es nennt den Widerspruch zwischen Rückgabewert und Test, git status bleibt sauber.
  2. Eine Datei: Ändern Sie nur greet.ts, sodass greet("Ada") Hello, Ada zurückgibt. Ändern Sie den Test nicht und committen Sie nicht. Danach den Test selbst ausführen; ohne Runner den Funktionsrückgabewert prüfen, dann git diff. Bestanden: Diff nur in greet.ts, Rückgabewert trifft den Test.
  3. Scheitert der Test weiter, die Ausgabe zurückgeben und dieselbe Datei erneut ändern lassen. Vor dem Commit den Diff selbst lesen. Bei gescheiterter Coding-Aufgabe ~/.dsh/sessions/ oder Trajectory auf der Site öffnen und trennen: falsches Tool, ungültige Parameter, abgelehnte Freigabe, Workspace ist gar nicht dieses Verzeichnis.

Beim ersten Mal Standard / native Tools. Erst wenn die Ein-Datei-Aufgabe sitzt, DSH_TOOLS_MODE=code oder both erwägen, damit das Modell mehrstufige Aufrufe in TypeScript orchestriert. In der offiziellen Referenz fällt DSH_PERMISSION_MODE prozessweit ungefähr auf workspace-write zurück; danger-full-access fragt kaum noch nach — die Erster-Lauf-Liste schließt das aus. Hakt es an JSON-Tool-Parametern, zuerst JSON Schema und AI Agent, dann erst das Modell wechseln. Zu große Aufgaben und Hin-und-her-Patches: AI-Coding-Workflow — dsh beantwortet nur, ob die offizielle Runtime da ist.

Ist DeepSeek Harness erfolgreich installiert?

„Praxis“ im Titel ist keine Rangliste, sondern eine halbe Stunde Checkliste. Alle fünf Zeilen müssen sitzen, bevor Sie dsh auf dieser Maschine „benutzbar“ nennen. Fehlt eine, zurück zum passenden Schritt — den Änderungsradius nicht ausweiten.

Prüfung Bestanden Bei Fehlschlag zuerst
Prozess npx @deepseek-ai/dsh web bleibt im Vordergrund Node, npx-Cache, Port prüfen
Oberfläche 127.0.0.1:3080 öffnet sich Mit --no-open manuell öffnen; --port prüfen
Schlüssel Keine Meldung über fehlende official-provider-Credentials Nur eine gültige DEEPSEEK_API_KEY belassen
Nur-Lesen-Aufgabe Headless druckt eine Antwort und beendet sich, kein neuer Diff Aufgabe verkleinern
Verlauf ~/.dsh/sessions/ kann diesen Aufruf nachvollziehen DSH_HOME prüfen

Fehlt eine der fünf, nicht zu „automatisch Dutzende Dateien ändern“ übergehen. Preview ändert sich schnell. Befehl, Node-Version, dsh-Paketversion und Datum notieren — nächste Woche trennen Sie Umgebungsdrift von einem Upstream-Breaking-Change.

Häufige dsh-Fehler und was Sie tun

npx scheitert oder ist sehr langsam. Beim ersten Mal wird @deepseek-ai/dsh gezogen. Bei instabilem Netz Quellbuild oder zuerst die npm-Registry prüfen. Ein halbes Cache-Verzeichnis ist keine erfolgreiche Installation.

3080 öffnet nicht. --no-open und manuell aufrufen; Port belegt oder Sie haben --port gesetzt und öffnen trotzdem 3080.

Oberfläche da, Modell tot. Meist die Schlüsselebene. Prozessumgebung hat Vorrang, ~/.dsh/.env ist nur Fallback. Nach der Änderung den Web-Prozess neu starten; Schlüssel werden nicht heiß nachgeladen.

Falsches Verzeichnis geändert. Aktuelles Verzeichnis beim Start und das in der Web-UI gewählte Repo. Häufigster Fehler: Home als Workspace.

Noch dsh run, oder Headless beendet sich nicht. Der User Guide sagt: Unterbefehl entfernt, Einmalaufgaben über --profile headless. Aufgabe auf eine Nur-Lesen-Anweisung kürzen, prüfen, dass der Prozess nicht auf Freigabe wartet, dann im Session-Log nachsehen, wo er hängt.

dsh ist keine Haut über Claude Code oder Codex. Herausgeber sind DeepSeek, Anthropic und OpenAI; dsh ist eigenständige Runtime plus Web / Headless, die anderen eigene CLIs. Konfigurationsverzeichnisse sind nicht kompatibel: dsh liegt in ~/.dsh. Erste Abnahme: 3080 oder eine Headless-Aufgabe; die anderen Stacks über ihre offiziellen Smoke-Tests. Parallel installieren ja; Schlüssel, Rechte und Sitzungen nicht als gemeinsam annehmen. Drei Stacks in einem Eingang bündeln Sie erst, wenn ein Gateway wirklich nötig ist; am ersten Tag nur dsh selbst.

Als Produktionsruntime ist sie jetzt ungeeignet. Das README markiert developer preview mit Breaking Changes. SAFETY.md ist härter: nicht auditiert; es führt modellgenerierte Befehle aus, lädt Drittanbieter-Plugins und berührt Netz plus die Dateien, die Sie ihm geben. Sandbox und Freigabe senken Risiko, sind aber nicht die einzige Kontrolle. Jetzt geeignet: Installationsabnahme im isolierten Verzeichnis, AI Coding auf Funktionsebene, Experimente gegen Session-Logs. Jetzt ungeeignet: hohe Rechte auf dem Produktiv-Repo, unbeaufsichtigter Umbau eines Monorepos, Preview in ein externes SLA schreiben.

Häufige Fragen

Was ist dsh?

dsh ist die Kommandozeile des von DeepSeek veröffentlichten Open-Source-Agent-Frameworks DeepSeek Harness. Sie steuert Sitzungen, Tools, Rechte und die Web-UI — nicht die Chat-API.

Wie installiert man dsh?

Zuerst Node.js, dann im isolierten Verzeichnis npx @deepseek-ai/dsh web. Nur wenn Sie Plugins ändern, einem Commit folgen oder Build-Artefakte vergleichen, clonen Sie und führen pnpm run build aus.

Braucht dsh einen API-Key?

Ja. Ohne Schlüssel öffnet sich die Oberfläche, Coding-Aufgaben laufen nicht. Legen Sie DEEPSEEK_API_KEY in die Prozessumgebung oder schreiben Sie ~/.dsh/.env und chmod 600.

Unterstützt dsh eine Web-UI?

Ja. npx @deepseek-ai/dsh web öffnet die Arbeitsfläche unter http://127.0.0.1:3080. Ohne Browser-Popup --no-open; bei belegtem Port --port.

Kann dsh AI Coding?

Es kann Dateien ändern, die Shell ausführen und suchen, bleibt aber im September 2026 ein developer preview. Beim ersten Mal im isolierten Repo: Nur-Lesen-Analyse, eine Funktion ändern, Tests laufen lassen, git diff prüfen — dann erst den Radius erweitern.

Was unterscheidet dsh von Claude Code?

dsh ist eine eigenständige Runtime von DeepSeek, Konfiguration in ~/.dsh. Schlüssel und Sitzungen teilt es nicht mit Claude Code oder Codex. Sie können beides parallel installieren; am ersten Tag nur dsh selbst zum Laufen bringen.

Länger dsh betreiben: Testumgebung getrennt halten

dsh berührt Workspace, API-Key, Sitzung und Befehlsausführung. Klappen Sie das Notebook zu, stoppen 3080 und Headless-Sitzungen. Eine Preview-Runtime in einem Verzeichnis zu halten, das Sie snapshotten und dessen Rechte Sie entziehen können, lässt sich leichter zurücksetzen als Ihr Home-Verzeichnis dauerhaft zu belegen.

Wenn lokale Nur-Lesen-Aufgaben und ein Ein-Funktion-Diff sitzen und Sie eine durchgehend erreichbare, eigene macOS-Umgebung brauchen, erst dann einen Cloud-Knoten ansehen — näher an einem wiederholbaren Experiment als ein Produktiv-Repo sofort an Preview-Software zu geben. ZekVPS Cloud-Mac-mini-Tarife ansehen

Zeitlich begrenzt