Communitygithub.com

Biblioteca 3D comunitaria

Utiliser et enrichir la bibliothèque communautaire de modèles 3D procéduraux (Three.js) pour explicateurs animés — chercher dans CATALOGO.md, visualiser un modèle dans vista.html, le copier dans un projet, et à la fin de CHAQUE vidéo détecter les nouveaux modèles, les préparer (miniature, catalogue, auteur, CC BY 4.0) et demander « Je les pousse dans la bibliothèque ? (O/n) » pour ouvrir la PR avec gh.

Qu'est-ce que Biblioteca 3D comunitaria ?

Cette skill automatise l'utilisation et l'enrichissement d'une bibliothèque communautaire de modèles 3D procéduraux (Three.js) destinée aux explicateurs animés. Elle permet de rechercher rapidement des modèles existants via grep sur le catalogue, de les visualiser avec un serveur HTTP local et un panneau de réglages, puis de les copier dans un projet en ajustant les imports. À la fin de chaque vidéo, la skill détecte automatiquement les nouveaux modèles créés, les prépare (génération de miniature, fiche JSON, entrée dans le manifeste et le catalogue) et demande à l'utilisateur s'il souhaite les publier via une pull request GitHub. Tous les modèles sont procéduraux (pas de textures téléchargées, pas de Math.random), sous licence MIT pour le code et CC BY 4.0 pour les modèles, avec crédit visible à l'auteur. La skill fonctionne avec des outils CLI (Python, gh) et est conçue pour être intégrée à des flux de travail d'agents IA comme Claude Code.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Pedrovbm1/explicadores-3d/tree/main/skills/biblioteca

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Bibliothèque 3D communautaire

HOME3D = $EXPLICADORES_3D ou ~/.explicadores-3d. La bibliothèque se trouve dans HOME3D/biblioteca/ : CATALOGO.md (une ligne par modèle avec miniature, paramètres et défauts), manifiesto.json, modelos/, piezas/, base/ (styles, lib2d, panneau de réglages), aportes/ (ce qu'ajoute la communauté), vendor/ (three.js, three.quarks, Tweakpane, police Fredoka) et vista.html.

Tout est procédural et déterministe : pas de textures téléchargées ni de Math.random. L'échelle par défaut est 1 u = 1 cm.

Chercher et utiliser un modèle

  1. Cherche par nom ou idée sans lire le catalogue entier (~200 lignes) : grep -i "moustique|insecte" HOME3D/biblioteca/CATALOGO.md. Lis la ligne : ce que c'est, fichier → export(paramètres), style de couleur et défauts connus (surtout "⚠ yeux").
  2. Regarde-le (optionnel) : sers le dossier (python -m http.server 8795 dans biblioteca/) et ouvre localhost:8795/vista.html?m=<id> ; avec &ajustes=1 le panneau apparaît pour déplacer la caméra, les couleurs et les lumières. Ou regarde la miniature miniaturas/<id>.png (dans un sous-agent si ton harness le permet, pour ne pas charger d'images dans ton contexte).
  3. Copie-le dans le projet (escena/modelos/), ne l'importe jamais depuis la bibliothèque, et ajuste l'import du style (../../base/estilo3d.js → ../estilo3d.js). S'il utilise des particules (piezas/particulas/), copie aussi vendor/quarks/ et ajoute "quarks.core" à l'importmap.
  4. Chaque fichier apporte en haut son API (axes, échelle, méthodes .poner* / .update(t)) : cela va sur une ligne dans la commande du constructeur.

Apporter de nouveaux modèles : activé (à la fin de chaque vidéo)

Apporter est la norme : à la fin d'une vidéo, on le propose toujours, et l'utilisateur n'a qu'à dire non s'il ne veut pas. La licence est MIT pour le code et CC BY 4.0 pour les modèles, avec crédit visible pour l'apporteur.

  1. Détecte les modèles et pièces nouveaux du projet (ne dépense pas de tokens ; compare avec la bibliothèque) :
    python "SKILL_DIR/nuevos.py" <projet>
    
    Si la réponse est "pas de nouveaux modèles" ou "l'utilisateur a déjà dit non", ne demande rien et termine.
  2. Prépare tout avant de demander, un modèle à la fois. Extrais --nombre et --que-es du commentaire en haut du fichier et --fn de son export principal. Vérifie d'abord qu'il ne contient rien de personnel (clients, marques, logos, textes de sa chaîne), qu'il est déterministe et qu'il n'a pas de formes qui ressemblent à des yeux ; ce qui ne correspond pas, ne le prépare pas.
    python "SKILL_DIR/aportar.py" --archivo <projet>/escena/modelos/arrosoir.js --fn creerArrosoir --id arrosoir \
      --nombre "Arrosoir" --que-es "Arrosoir de jardin avec anse et bec" [--autor "<nom ou @utilisateur>"] --style maison
    
    L'auteur est demandé une seule fois (comment il veut apparaître dans le crédit) et est enregistré dans ~/.explicadores-3d/autor.txt. Cela génère une miniature 400×400, ficha.json (auteur, date, CC BY 4.0), la ligne du manifeste et du catalogue, et passe le validateur. Rien n'est encore poussé.
  3. Demande, en une ligne, avec la liste de ce qui est préparé : Je les pousse dans la bibliothèque ? (O/n). Entrée, "o", "oui" ou "vas-y" = oui. Seulement "n" ou "non" (ou quelque chose qui le rejette clairement) = non.
  4. Oui → une seule PR avec tout :
    python "SKILL_DIR/aportar.py" --publicar arrosoir,pot
    python "SKILL_DIR/nuevos.py" <projet> --subido escena/modelos/arrosoir.js escena/modelos/pot.js
    
    Donne le lien de la PR. Non → python "SKILL_DIR/nuevos.py" <projet> --no et ne redemande pas dans ce projet (ni dans de nouvelles sessions : reste dans <projet>/.biblioteca.json).
  • Sans gh : --publicar prépare tout et explique les 3 étapes à la main (fork sur le web, commit dans une branche, PR). Pour installer gh : winget install GitHub.cli / brew install gh / cli.github.com, puis gh auth login.
  • Chaque PR est validée par une GitHub Action (navigateur sans tête, déterminisme, pas de réseau, taille, miniature, ligne et auteur) et approuvée par une personne. Une fois fusionnée, l'auteur apparaît dans CATALOGO.md, dans la galerie index.html et dans le classement APORTADORES.md. Celui qui apporte reçoit en premier les nouveaux paquets ou les paquets mis en avant (voir README, "Tu apportes et tu reçois").

Corriger un défaut

Si dans une vidéo tu corriges un défaut d'un modèle de la bibliothèque, propose la correction au dépôt aussi (PR normale, expliquant l'avant et l'après) ; les modifications en dehors de aportes/ sont révisées à la main par le mainteneur du dépôt.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Skills associés