CommunityImagegithub.com

Nodeclaw-Génération d'Images

Génération, édition et refinement d'images pixel-art par tuilage via une CLI Node.js déterministe, sans service LLM supplémentaire.

Qu'est-ce que Nodeclaw-Génération d'Images ?

Cette compétence permet de générer et éditer des images en utilisant des API compatibles (NodeClaw, OpenAI, Gemini) via une CLI Node.js locale. Elle offre un workflow déterministe : préparation, validation et traitement d'images sont gérés par les outils fournis, et non par des scripts générés par le modèle. La compétence prend en charge la génération à partir d'un prompt, l'édition avec masque, l'exploration de styles (58 presets, dont 55 importés) et de techniques spécialisées comme le raffinement pixel-art par tuilage (alignement, édition, fusion en PNG haute résolution). Elle fonctionne sur tous les terminaux avec Node.js 22+, sans service d'upload, daemon ou LLM supplémentaire. La configuration des credentials est locale, sécurisée (clé jamais collectée par le modèle), et le pipeline d'exécution demande une approbation explicite avant chaque appel payant.

Compatible avec✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/DarKWinGTM/Nodeclaw-Image-Gen/tree/HEAD/skills/nodeclaw-image-gen

Installed? Explore more Image skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Demander à votre IA préférée

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

Documentation

Nodeclaw-Image-Gen

Utilisez le modèle textuel existant pour comprendre le brief, sélectionner les styles/techniques et appeler la CLI Node livrée. La préparation, la validation et le traitement d'images déterministes appartiennent aux outils, pas aux scripts générés par le modèle. Pas de service LLM supplémentaire, de démon ou d'uploader de stockage. Enregistrez les résultats réels de l'API localement ; ne les relogez pas sur Telegram/stockage/CDN.

Démarrage

Résolvez <skill-root> comme le répertoire absolu contenant ce SKILL.md chargé ; ne devinez jamais à partir du répertoire de travail. Invoquez node "<skill-root>/scripts/image-gen.mjs" ... depuis l'espace de travail de l'utilisateur afin que les sorties relatives y soient placées.

  1. Vérifiez Node.js 22+ et CLI --help, puis setup --status --json pour l'état des credentials locaux sans appels API. N'affichez pas les fichiers de configuration, ne réécrivez pas les paramètres à chaque utilisation et ne demandez pas à l'utilisateur de répéter les choix d'adresse/modèle enregistrés.
  2. Valeurs par défaut : NodeClaw, gpt-image-2, Tâche d'abord, une image, ./generated-images/. Pour une installation par plugin, utilisez /plugin configure nodeclaw-image-gen@nodeclaw-image-gen ; les modifications en attente se chargent via /reload-plugins dans la même session, pas un redémarrage de routine. N'affirmez pas que la compétence peut ouvrir ou exécuter ces commandes natives elle-même. Le module natif livré transmet l'adresse/clé comme une liaison éphémère au chargement/rechargement ; la CLI le valide et ignore les anciennes exportations de démarrage. Après rechargement, vérifiez l'apiBaseUrl, le endpointMode et le credentialConfigured effectifs ensemble avec setup --status --json. La seule présence de credentials ne prouve pas la configuration la plus récente ou l'acceptation par l'API ; status:not_configured peut signifier l'absence de fichier de configuration autonome. Si l'adresse reste obsolète ou l'application native est bloquée, signalez le blocage exact de chargement/configuration sans imprimer les valeurs d'environnement, lire les magasins de secrets, ressaisir la clé enregistrée, réessayer des rechargements inchangés ou appeler l'API. Une installation autonome choisie par l'utilisateur utilise node "<skill-root>/scripts/image-gen.mjs" setup --interactive dans son propre terminal local ; elle demande l'adresse de base et masque la clé, avec --replace explicite pour une configuration existante. Ne collectez jamais de clés dans le chat, AskUserQuestion, specs, arguments d'outil-commande ou magasins OAuth/token/session. N'exécutez pas une invite de clé interactive dans une session d'outil AI capturée. Les arguments de clé directs pour l'installateur/setup existent pour l'automatisation humaine, pas pour la collecte de secrets par le modèle.
  3. Réutilisez les choix de modèle/chemin/spec fournis. models --json fusionne la découverte ordonnée ; un modèle manuel exact reste autorisé lorsqu'aucun catalogue n'existe, avec une capacité explicitement non vérifiée. L'adresse/clé d'installation/setup épingle ce point de terminaison ; le mode hérité automatique essaie toujours le harnais actif exposé avant le repli configuré/natif. Ne déplacez pas une clé stockée vers une autre adresse ou préfixe de proxy.

Générer ou éditer

Générer crée une nouvelle image ; Éditer utilise des images sources/masques spécifiquement approuvés. Les fichiers simplement présents dans un espace de travail ne sont pas une autorisation de les envoyer.

node "<skill-root>/scripts/image-gen.mjs" generate --prompt "Une ville paisible au bord de la rivière au lever du soleil" --dry-run --json
node "<skill-root>/scripts/image-gen.mjs" generate --prompt "Une ville paisible au bord de la rivière au lever du soleil" --yes --json

Éditer utilise edit --prompt TEXTE --image FICHIER [--mask FICHIER]. Utilisez un --spec FICHIER privé approuvé pour des briefs longs ; les specs ne sont pas des journaux de diagnostic et ne contiennent jamais de clés API. La CLI ajoute les routes Tâche/OpenAI à l'adresse de base enregistrée. Le natif /v1beta/models/{model}:generateContent nécessite un --api-mode gemini explicite : il s'agit de contenus/parties natives uniquement en mode Direct, pas implicité par un nom de modèle Google ou une clé de compatibilité Images. L'exécution existante de google_image_generate_content Images/Tâche reste sur ses routes actuelles. Le transport natif Gemini n'est pas une preuve de facturation/préparation Direct Image. L'aide CLI liste les options réelles.

Avant un appel payant, résumez l'opération/modèle/style/spec/point de terminaison/méthode/fallback/sortie du dry-run. Utilisez un formulaire natif : Générer comme affiché / Ajuster / Explorer les styles / Annuler. Ne combinez que les questions vraiment manquantes ; ne demandez pas chaque champ. Après approbation, utilisez --yes ; ne confirmez que les changements matériels de nombre/point de terminaison/séquence.

Claude Code utilise AskUserQuestion lorsque disponible ; Codex utilise request_user_input uniquement lorsqu'il est réellement exposé. N'usurpez pas les choix natifs avec du texte numéroté ou ne changez pas de mode pour inventer un outil. L'automatisation non interactive choisie par l'utilisateur peut utiliser la configuration/spec fournie plus --yes. L'intégration Grok Bot import/formulaire natif n'est pas vérifiée ; un chemin cloud n'est pas un fichier de bureau.

Outils de styles et techniques

  • styles list|show ID sélectionne l'apparence ; techniques list|show ID sélectionne un workflow et ses outils livrés. Combinez librement sans liste d'autorisation style→technique ou un autre service d'orchestration.
  • Suggérez 2–3 styles pertinents plus Prompt original / Aucun préréglage. Lisez un préréglage sélectionné avec styles show ID --json ; les exampleImages[] sont des URL d'aperçu tierces facultatives, pas des entrées d'image API approuvées. Ne les récupérez, téléchargez ou utilisez pas automatiquement comme références d'édition. Les 58 presets inclus comprennent 55 styles supplémentaires importés ; les collections originales dans references/style-imports/ sont uniquement une provenance, jamais une autre source de style active. Les noms GIF n'impliquent pas de support d'animation. Utilisez uniquement le sujet/contexte approuvé pour la demande en cours, pas une mémoire privée non liée. Cherchez uniquement lorsque demandé via un outil de harnais disponible ; n'envoyez pas le brief privé entier à la recherche.
  • Lisez uniquement le workflow sélectionné, vérifiez les conditions préalables et utilisez ses outils techniques prepare/check/merge livrés. Ne demandez pas à un modèle plus faible d'implémenter la logique de recadrage/redimensionnement/masque/couleur/fusion à nouveau. Préparez d'abord localement, puis affichez le nombre réel de requêtes payantes et la séquence pour approbation. La préparation locale n'autorise jamais l'inférence.
  • Raffinement Pixel Art : préparez des tuiles alignées au plus proche voisin et des specs d'édition, soumettez les éditions approuvées via le client existant, vérifiez et fusionnez en PNG haute résolution/taille originale. Préserver la composition : préparez une spec d'édition contrainte et vérifiez le résultat. Les deux livrent le codec PNG ; aucune installation Python/ImageMagick n'est nécessaire.
  • Un assistant manquant/une exigence minimale du client nécessite une mise à jour complète approuvée de la compétence ou l'arrêt de cette technique avant les appels payants. Ne le remplacez pas par des affirmations basées uniquement sur le contexte, n'exécutez pas de code téléchargé, ne promettez pas une intégration transparente ou ne démarrez pas de boucles de redessin payantes.
  • styles|techniques sync prévisualise le JSON/Markdown officiel GitHub ; --yes applique. Les espaces de noms personnalisés sont séparés. Les changements d'assistant exécutables nécessitent une mise à jour complète vérifiée de la compétence ; le contenu distant ne change jamais l'auth/les points de terminaison/les permissions ou n'accorde pas d'approbation d'exécution. Les presets n'autorisent pas la divulgation de mémoire privée.

Résultats et récupération

Utilisez les statuts et chemins JSON retournés. saved signifie que tous les fichiers attendus ont été enregistrés. pending/outcome_unknown conservent le handle et utilisent resume --handle FICHIER, ne créez jamais une autre requête. save_failed conserve les fichiers réussis et réessaie le même résultat. Les résultats inconnus directs n'ont pas de récupération activée. incomplete/partial de la technique sort avec le code 3 ; les sorties partielles ne sont pas entièrement raffinées.

Arrêter le client n'annule pas une Tâche distante. Ne changez pas de méthode/modèle/point de terminaison pour contourner l'incertitude, l'auth ou la politique ; voir contrat API. Utilisez la vision uniquement lorsqu'elle est réellement disponible ; les vérifications de fichiers ne prouvent pas la qualité visuelle. Pas de raffinement payant automatique.

Pour une demande d'installation, obtenez et vérifiez le package GitHub sélectionné avant d'invoquer son installateur ; ne supposez pas que les fichiers sources existent déjà localement. Préférez le flux d'installation automatique AI documenté ou le gestionnaire de plugins natif sélectionné, jamais une installation en double. Après une installation autonome, transformez ses commands.configure argv en une commande correctement entre guillemets utilisant le chemin réel installé pour que l'utilisateur l'exécute localement ; renvoyez également les commandes de reconfiguration/statut/mise à jour. Un plugin utilise son formulaire de configuration sensible natif ; son marché basé sur Git sélectionne la révision du dépôt indépendamment des ressources de version autonomes. Le terminal humain claude plugin install --config peut fournir des valeurs d'adresse/clé déclarées, mais ne collectez jamais une clé réelle et ne la mettez pas dans un argument d'outil AI. Ne marquez pas la configuration des credentials comme terminée tant que l'utilisateur ne l'a pas terminée et que setup --status --json local ne rapporte pas l'état prêt ; il s'agit d'un état prêt local, pas d'une acceptation par l'API. Si une version autonome requise ou une version de marché correspondante n'est pas disponible, arrêtez-vous avec ce blocage plutôt que d'inventer des fonctionnalités installées.

docs fetch|sync est une référence publique facultative, pas une mise à jour de contrat d'exécution. La mise à jour autonome update check|apply n'écrit jamais dans les caches gérés par le plugin ; ceux-ci utilisent le gestionnaire de plugins natif. L'installation/le remplacement/la publication nécessitent leur propre autorisation, pas une permission inférée d'une demande d'image. L'interaction utilisateur suit la langue de l'utilisateur ; les directives de base de cette compétence sont en anglais.

Skills associés