4.0 KiB
4.0 KiB
DSH VPS — plugins bloqués (pnpm absent) et mémoire scaffoldée mais invisible
Instance auteur : hermes-nyora Date : 2026-08-24 Tags : dsh, vps-contabo, docker, plugins, memoire Statut : valide (fix pnpm appliqué et vérifié) — volet mémoire/MCP en cours (voir brief-gemini-dsh-mcp-bridge-memoire-20260824.md)
Problème
Deux constats indépendants sur dsh-vps (VPS Contabo, @deepseek-ai/dsh@0.1.1-rc.2) :
dsh plugin --profile web add <package>échoue immédiatement avecdsh: pnpm not found on PATH — install pnpm to manage profile plugins. Impossible d'installer le moindre plugin tiers (dont le bridge MCP officiel@deepseek-ai/dsh-mcp-client).- Un skill
session-memoryet un fichier$DSH_HOME/memory/notes.mdsont scaffoldés parentrypoint.shdès le premier boot (15/08), pour servir de mémoire persistante. Neuf jours plus tard,notes.mdest strictement identique à sa version initiale malgré une instance active.
Contexte et contraintes
dsh-vpstourne dans un conteneur Node 22-slim isolé, volumes nommésdsh_vps_home(DSH_HOME) etdsh_vps_workspace(persistants entre restarts, mais pas versionnés en amont).permission.defaultPreset: danger-full-accesssur cette instance — aucune restriction d'action à l'intérieur du conteneur.- Dockerfile n'installait que npm ; aucune trace de pnpm.
- Le dossier
/home/dsh-agent/dsh-vpssur le VPS n'était pas un dépôt git au moment du constat (.gitignoreprésent, jamaisgit init).
Ce qui NE fonctionne PAS
| Tentative | Erreur obtenue | Raison de l'échec |
|---|---|---|
dsh plugin --profile web add <pkg> sans pnpm |
pnpm not found on PATH |
pnpm jamais installé dans l'image |
Compter sur le SKILL.md session-memory pour la mémoire |
notes.md jamais modifié depuis le déploiement |
dsh --dump-config révèle que skill-filesystem, tool-skill et skill-badge sont tous disabled: true, patchés par le bundle @deepseek-ai/dsh-web-app. L'agent n'a jamais eu la capacité de lire ce fichier. |
Solution validée
# 1. Backup avant modification
sudo cp /home/dsh-agent/dsh-vps/Dockerfile /home/dsh-agent/dsh-vps/Dockerfile.bak-add-pnpm-20260824
# 2. Ajout de pnpm via corepack, juste avant l'install npm globale de dsh
sudo sed -i 's|RUN npm install -g @deepseek-ai/dsh@0.1.1-rc.2 @banlan/inkstone|RUN corepack enable \&\& corepack prepare pnpm@latest --activate \&\& npm install -g @deepseek-ai/dsh@0.1.1-rc.2 @banlan/inkstone|' /home/dsh-agent/dsh-vps/Dockerfile
# 3. Rebuild + redeploiement
cd /home/dsh-agent/dsh-vps
sudo docker compose build dsh-vps
sudo docker compose up -d dsh-vps
Vérification
sudo docker exec dsh-vps sh -c "which pnpm && pnpm --version"
# Résultat attendu : /usr/local/bin/pnpm, version affichée
sudo docker exec dsh-vps dsh plugin --profile web --help
# Résultat attendu : aide pnpm complète (plus l'erreur "pnpm not found")
curl -sk -o /dev/null -w "%{http_code}\n" https://<tailscale-ip>:8900/
# Résultat attendu : 401 (auth htpasswd, service up) — pas de 000/502
Pièges spécifiques DSM / NAS
- Ce n'est pas un piège NAS mais VPS :
/home/dsh-agent/*appartient à l'utilisateurdsh-agent(uid 1001), pas àclaude-oversight— toute lecture/écriture même en diagnostic nécessitesudo, y compris pour un simplediffoucat. corepack prepare pnpm@latest --activateau build time n'empêche pas un message "Corepack is about to download…" au premier appel runtime — c'est normal (résolution de version), pas une erreur.- Le dossier
dsh-vpssur le VPS n'est toujours pas un dépôt git — les futurs changements de Dockerfile/compose ne sont pas encore tracés automatiquement. À corriger (voir brief associé).
Références
- DeepSeek Harness — docs officielles
- Note NyoraNotes :
dsh/dsh-vps-audit-capacite-plugins-mcp-et-memoire-persistante.md