DeepSeek Harness : l'agent IA open-source où tout est un plugin
Le 13 août 2026, DeepSeek a publié en open-source quelque chose de différent. Pas un nouveau modèle — un harnais. DeepSeek Harness (dsh) est la couche applicative qui s'installe autour d'un modèle d'IA et offre beaucoup de fonctionnalités : accès aux fichiers, commandes terminal, appels d'outils, mémoire de session et interface web. La formule centrale du projet est simple : Modèle + Harnais = Agent. Le modèle réfléchit, le harnais gère tout le reste.
DeepSeek est une entreprise chinoise. Les acteurs chinois sont devenus extrêmement actifs dans la création d'outils et de modèles d'IA open-source — Qwen (Alibaba), DeepSeek, Yi (01.AI), GLM (Zhipu) et bien d'autres publient désormais la plupart de leurs travaux sous des licences permissives. Le paysage de l'IA open-source est aujourd'hui en grande partie façonné par les contributions chinoises.
Ce qui le rend intéressant n'est pas la marque DeepSeek — c'est que le DeepSeek Harness est totalement agnostique quant au modèle. Sous le capot, chaque capacité (le connecteur de modèle, le registre d'outils, la boucle agent, le sandbox, même l'UI) est un plugin Cordis remplaçable. Vous pouvez le diriger vers l'API de DeepSeek, OpenAI, Anthropic ou vers un serveur Ollama local tournant sur votre propre matériel. Rien n'est verrouillé.
Ce qu'il fait concrètement
DeepSeek Harness se présente sous la forme d'une application web locale. Une seule commande le lance :
npx @deepseek-ai/dsh web
# Interface web → http://127.0.0.1:3080
De là, vous configurez un fournisseur de modèle, choisissez un répertoire de travail et commencez à interagir. L'agent peut lire et écrire des fichiers, exécuter des commandes shell, chercher sur le web (via un plugin), déléguer du travail à des sous-agents et maintenir le contexte sur une session. Il lit les fichiers AGENTS.md et CLAUDE.md, supporte MCP en tant que client et peut même déléguer des tâches à des binaires Claude Code ou Codex si vous les avez installés.
Tout tourne sur votre machine. Il ne sert que localhost — pas de composant cloud, pas de télémétrie, pas de limite d'utilisation.
L'architecture plugin
L'affirmation « tout est un plugin » est le cœur architectural, pas du marketing. DeepSeek Harness est construit sur Cordis, un framework d'injection de dépendances conçu pour la composabilité spatio-temporelle. En pratique :
- Les modèles sont des plugins. L'adaptateur par défaut (
dsh-llm-pi-ai) parle le protocole OpenAI chat-completions, donc tout endpoint compatible OpenAI fonctionne. - Les outils sont des plugins. Édition de fichiers, accès terminal, recherche web — chacun est un montant séparé.
- Les sessions, sandboxes, le scheduler — tous des plugins.
- L'interface web elle-même est un plugin remplaçable.
Vous ajoutez, supprimez ou remplacez n'importe lequel de ces éléments au moment de l'exécution via la configuration, sans toucher au code source. Une couche de patch (cordis.patch.yml) permet de remplacer des composants de manière déclarative.
Comparaison avec Claude Code et Codex
| DeepSeek Harness | Claude Code | OpenAI Codex | Hermes Agent | OpenCode | |
|---|---|---|---|---|---|
| Licence | MIT | Propriétaire | Open source | MIT | MIT |
| Langage | Node.js (Cordis) | TypeScript | TypeScript | Python | Go |
| Modèle | N'importe lequel (multi-fournisseur) | Anthropic uniquement | OpenAI uniquement | Tout fournisseur | N'importe lequel (multi-fournisseur) |
| Interface | Web + headless | Terminal | Terminal | TUI + passerelle de messagerie | Terminal |
| Extension | Plugins Cordis | Hooks / MCP | Hooks / MCP | Skills + MCP | LSP + MCP |
| Boucle d'apprentissage | Non | Non | Non | Oui — création de skills, mémoire | Non |
| Planification | Non | Non | Non | Cron intégré | Non |
| Backends terminaux | Local uniquement | Local | Local | Local, Docker, SSH, Modal, Daytona… | Local, Docker, SSH |
| Sous-agents | Oui | Oui | Oui | Oui (RPC) | Oui |
| Support MCP | Oui | Oui | Oui | Oui | Oui |
| Maturité | Developer preview | Production | Production | Production (233k+ étoiles) | Production |
Le domaine évolue vite. Claude Code et Codex sont des produits finis liés à leurs propres fournisseurs de modèles. Hermes Agent est l'option open-source la plus mature avec une boucle d'apprentissage auto-améliorante. OpenCode est une alternative légère en Go qui privilégie les workflows nativement terminaux. DeepSeek Harness se positionne au milieu — plus ambitieux architecturalement que tous les autres grâce à Cordis, mais plus jeune dans son cycle de vie.
Où DeepSeek Harness se distingue
Le système de plugins Cordis est unique parmi ces cinq outils. Chaque couche — connecteur de modèle, outils, boucle d'exécution, UI — est un montant remplaçable. Aucun autre agent de la liste ne permet de remplacer l'UI ou le scheduler sans toucher au code source. DeepSeek Harness embarque aussi des ponts de compatibilité pour Claude Code (hooks.json) et Codex, ce qui le positionne comme un méta-framework plutôt qu'un remplacement direct.
Où Hermes Agent se distingue
Hermes Agent est le seul à avoir une boucle d'apprentissage fermée. Il crée des skills à partir de l'expérience, persiste les connaissances entre les sessions et construit un modèle de qui vous êtes. Il tourne aussi sur sept backends terminaux dont des options serverless (Modal, Daytona) où l'agent hiberne au repos. Si vous voulez votre agent sur une VM distante ou qui vous parle via Telegram, Hermes Agent le fait dès l'installation.
Où les autres se positionnent
OpenCode est un bon choix si vous voulez un agent terminal rapide en Go avec support LSP et sans dépendances lourdes. Claude Code et Codex restent les options les plus abouties si vous êtes déjà ancré dans leurs écosystèmes respectifs.
Pour les utilisateurs qui souhaitent faire tourner leur modèle en local, Hermes Agent est le meilleur choix si vous voulez un agent mature qui apprend et tourne partout. DeepSeek Harness est le meilleur choix si vous voulez une flexibilité architecturale maximale et acceptez d'être un early adopter. OpenCode est le meilleur choix si vous voulez un agent terminal léger et rapide sans le surpoids.
Avantages
- Entièrement open source (MIT). Vous pouvez inspecter chaque ligne, la modifier et l'auto-héberger sans restriction.
- Agnostique quant au modèle. Fonctionne avec DeepSeek, OpenAI, Anthropic, Google ou tout endpoint compatible OpenAI — y compris les modèles locaux via Ollama.
- Architecture plugin. Chaque couche est remplaçable. Si vous n'aimez pas la gestion des fichiers, remplacez le plugin fichier. Si vous voulez une autre UI, montez-en une autre.
- Local-first. Pas de dépendance cloud. Le harness ne sert que localhost.
- Support MCP. Connexion à l'écosystème Model Context Protocol.
- Flux multi-modèles. Routez le raisonnement lourd vers un modèle cloud et les tâches confidentielles vers un modèle local au sein de la même session.
Inconvénients
- Developer preview (v0.1.0-rc.5). DeepSeek avertit explicitement des changements de compatibilité. Le format de session n'a pas de garantie de stabilité.
- Pas prêt pour la production. Adapté à l'évaluation et aux expérimentations internes, pas comme unique outil pour du travail critique.
- Support de plateforme limité. L'interface web fonctionne partout, mais les terminaux persistants (PTY) nécessitent POSIX — le support Windows est partiel.
- Pas de terminal UI. Seule une interface web et un mode headless existent aujourd'hui. Pas de TUI.
- Écosystème jeune. Le catalogue de plugins grandit mais reste petit comparé aux frameworks matures.
- Nécessite Node.js (^22.19 ou >=24). Les versions impaires comme Node 23 ne sont pas supportées.
Configuration avec des modèles locaux via Ollama
Tout l'intérêt d'un harness local-first est de le coupler avec des modèles qui tournent sur votre propre matériel. Voici comment diriger DeepSeek Harness vers un serveur Ollama local.
1. Démarrer Ollama
Assurez-vous qu'Ollama est en cours d'exécution et que vous avez au moins un modèle :
ollama pull qwen3:8b
2. Démarrer DeepSeek Harness
npx @deepseek-ai/dsh web
Ouvrez http://127.0.0.1:3080 dans votre navigateur.
3. Ajouter un fournisseur de modèle personnalisé
Ouvrez Settings → Models et cliquez sur Add a custom provider. Remplissez :
| Champ | Valeur |
|---|---|
| Nom du fournisseur | Ollama Local |
| URL de base | http://localhost:11434/v1 |
| Type d'API | Compatible OpenAI |
Si l'endpoint ne supporte pas la liste des modèles, ajoutez l'ID de votre modèle manuellement (par ex. qwen3:8b).
4. Gérer la compatibilité
L'endpoint compatible OpenAI d'Ollama n'est pas identique à celui d'OpenEye. Vous devrez peut-être activer des switches de compatibilité selon votre modèle :
compat.supportsDeveloperRole: false— Ollama ne supporte pas le rôledeveloperque certains agents envoient. Activez-le si les requêtes échouent avec une erreur de rôle.compat.maxTokensField: max_tokens— Ollama utilisemax_tokensau lieu du nom de champ plus récent.
Ces options se définissent dans ~/.dsh/settings.yaml sous la configuration du fournisseur :
llm-pi-ai:
providers:
ollama-local:
baseURL: http://localhost:11434/v1
apiKeyEnv: OLLAMA_API_KEY
compat:
supportsDeveloperRole: false
maxTokensField: max_tokens
models:
- id: qwen3:8b
input: [text]
5. Sélectionner le modèle
De retour dans l'interface web, ouvrez le sélecteur de modèle et choisissez votre modèle Ollama. Il devient le modèle par défaut pour les nouvelles sessions.
DeepSeek Harness est un framework agent — il envoie des prompts multi-étapes avec des appels d'outils, ce qui nécessite un modèle qui suit bien les instructions. Un Qwen 3 8B ou DeepSeek-V4 Flash via Ollama est un bon point de départ. Pour des tâches plus lourdes (refactors multi-fichiers, planification système), un modèle plus gros (14B–30B) avec assez de VRAM sera nettement plus performant. Consultez notre guide de choix de modèle pour sélectionner la bonne taille pour votre matériel.
Référence de configuration
Toute la configuration se trouve sous ~/.dsh :
| Chemin | Usage |
|---|---|
settings.yaml |
Paramètres globaux : modèle par défaut, config fournisseur, permissions |
.credentials.yaml |
Clés API (write-only, jamais retournées au navigateur) |
cordis.patch.yml |
Overrides de montage/démontage de plugins |
profiles/ |
Répertoires par profil (web, headless, personnalisé) |
Commandes de diagnostic utiles :
dsh web --dump-config # Affiche l'arbre complet de composition avec sources d'override
dsh web --dump-default-config # Affiche uniquement les defaults de la couche bundle
dsh web --port 8080 # Utiliser un port différent
En résumé
DeepSeek Harness est le framework agent open-source le plus ambitieux architecturalement sorti en 2026. Le design « tout est un plugin » sur Cordis lui donne un plafond de flexibilité que des outils fermés comme Claude Code ne peuvent pas atteindre — vous pouvez remplacer le modèle, les outils, la boucle d'exécution et l'UI sans forker le projet.
Mais c'est un developer preview. Les APIs changeront, l'écosystème de plugins est jeune et le format de session est instable. Si vous évaluez des frameworks agent pour un usage interne, ça vaut le coup d'essayer — surtout couplé à des modèles locaux où ses avantages en confidentialité et coût brillent. Si vous avez besoin d'un outil éprouvé pour la production aujourd'hui, Claude Code ou Codex sont des choix plus sûrs.
Pour les utilisateurs local-first en particulier, la combinaison de la licence MIT, du design agnostique et du service localhost-only fait de DeepSeek Harness l'une des options les plus intéressantes pour construire des flux de travail agent privés et auto-hébergés. Associez-le à Ollama et un modèle local performant et vous avez une pile agent complète qui ne communique jamais avec l'extérieur.