diff --git a/common/hermes-skills-hub-scanner-securite.md b/common/hermes-skills-hub-scanner-securite.md index 0596519..4501b8d 100644 --- a/common/hermes-skills-hub-scanner-securite.md +++ b/common/hermes-skills-hub-scanner-securite.md @@ -1,7 +1,7 @@ # Hub public de skills Hermes (skills.sh) — identifiants, scanner de sécurité, override manuel **Date** : 2026-08-20 -**Sphères concernées** : hermes-tt, hermes-nyora, hermes-perso +**Sphères concernées** : hermes-tt, hermes-nyora, hermes-perso, hermes-nabil (VPS Contabo) ## Contexte @@ -9,10 +9,10 @@ Vidéo Dr Firas sur Hermes (Mem0, Caveman, Defuddle, Marketing Skills, Humanizer ## Ce qui a été fait -- **humanizer** (les 3 instances) : 2.5.1 (builtin, ported, figé à la sortie de l'image) -> 2.11.2 (amont), généralisé sur tt/nyora/perso à la demande de Nabil. Verdict scanner SAFE sur les 3 (2 faux positifs "injection" récurrents sur des exemples pédagogiques internes à la skill, sans conséquence). -- **caveman** (hermes-tt, test) : installé. Verdict SAFE, aucun finding. -- **product-marketing** (hermes-nyora) : installé, comblait un vrai manque (socle marketing absent). Verdict SAFE. -- **ai-seo** (hermes-nyora) : verdict automatique DANGEROUS (3 findings) — installé manuellement après revue complète. Voir section dédiée ci-dessous. +- **humanizer** (les 4 instances, y compris hermes-nabil VPS) : 2.5.1 (builtin, ported, figé à la sortie de l'image) -> 2.11.2 (amont), généralisé à la demande de Nabil ("généraliser pour tous"). Verdict scanner SAFE sur les 4 (2 faux positifs "injection" récurrents sur des exemples pédagogiques internes à la skill, sans conséquence). +- **caveman** : installé sur hermes-tt (test) et hermes-nabil (beaucoup d'outillage dev : github, debugging, code review). Verdict SAFE partout, aucun finding. +- **product-marketing** : installé sur hermes-nyora et hermes-nabil (IAKifech n'avait aucune couverture marketing/SEO, contrairement à nyora qui avait déjà copywriting/seo-audit). Verdict SAFE partout. +- **ai-seo** : verdict automatique DANGEROUS (3 findings) sur hermes-nyora ET hermes-nabil (même contenu, même hash) — installé manuellement sur les deux après revue complète. Voir section dédiée ci-dessous. - Pack marketingskills (49 skills) : PAS installé en entier — nyora avait déjà copywriting/seo-audit/content-strategy/social/dr-nexum-production en local, doublon évité. - **defuddle** : pas installé — nyora-veille couvre déjà le nettoyage web ; node/npm présents dans les conteneurs (le piège CLI-absent de la vidéo ne s'appliquait pas ici) mais aucun besoin identifié. - **Mem0** : pas ré-évalué — déjà tranché le 18/08 (évaluation théorique seule, plafond 43 conteneurs NAS respecté, 0 déploiement). Mémoire native confirmée lexicale (FTS, state.db 272 Mo sur hermes-tt, provider: ''), même limite que le trigger notes_fts cassé sur nyora-notes-tt — les deux à traiter ensemble dans une session dédiée. @@ -56,6 +56,10 @@ chown -R root:root /opt/data/skills/ # findings + evaluation en metadata, jamais maquiller en verdict "safe" ``` +## Différence de convention hermes-nabil (VPS) vs instances NAS + +hermes-nabil tourne avec HERMES_UID/GID=1000 (utilisateur hermes), HERMES_HOME=/data (pas /opt/data) -- le process hermes tourne en tant qu'utilisateur hermes, pas root comme sur les 3 instances NAS. Les fichiers installés/places a la main doivent donc etre chown hermes:hermes, pas root:root. Gitea inaccessible depuis le VPS via 172.17.0.1 (c'est le gateway Docker local du NAS, pas routable depuis l'exterieur) -- utiliser le Tailscale 100.86.197.88:3232 a la place. + ## Piège : l'identifiant hub owner/skills/name suppose une structure de repo précise hermes skills search retourne un identifiant skills-sh/// qui fonctionne pour l'inspect mais peut échouer au fetch réel à l'install : Error: Could not fetch '...' from any source. — sans autre détail. Cause : le résolveur attend SKILL.md sous skills// dans le repo source ; certains repos (blader/humanizer) ont leur SKILL.md à la racine.