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.
- Vérifiez Node.js 22+ et CLI
--help, puissetup --status --jsonpour 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. - 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-pluginsdans 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, leendpointModeet lecredentialConfiguredeffectifs ensemble avecsetup --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_configuredpeut 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 utilisenode "<skill-root>/scripts/image-gen.mjs" setup --interactivedans son propre terminal local ; elle demande l'adresse de base et masque la clé, avec--replaceexplicite 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. - Réutilisez les choix de modèle/chemin/spec fournis.
models --jsonfusionne 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 IDsélectionne l'apparence ;techniques list|show IDsé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; lesexampleImages[]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 dansreferences/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/mergelivré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 syncprévisualise le JSON/Markdown officiel GitHub ;--yesapplique. 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.