Communitygithub.com

maxiplux/framechord

Générez des images, infographies, discours, podcasts, musique et effets sonores avec le CLI framechord, en utilisant des identités de personnages réutilisables et des briefs locaux en YAML et Markdown.

Qu'est-ce que framechord ?

FrameChord est une compétence spécialisée qui permet aux agents d'IA (comme Claude Code, Cursor, Codex) de générer une large gamme de médias – images, infographies, discours, podcasts, musique et effets sonores – via le binaire `framechord`. Elle évite de changer d'outil ou d'appeler des API fournisseur directement dans la compétence, assurant un flux de travail cohérent et prévisible. Conçue pour les projets de type `mediaagent/`, FrameChord prend en charge les installations existantes et fournit des chemins de répertoire de données via son binaire. Ses fonctionnalités incluent la création de personnages réutilisables, le traitement de briefs locaux en YAML et Markdown, la validation de la configuration et des jobs, l'inspection des exécutions via des sorties JSON, la gestion des runs enregistrés et l'intégration avec divers fournisseurs pour la génération de médias. La compétence gère la continuité des personnages, la configuration des fournisseurs (OpenAI, Google par défaut), la découverte et le clonage des voix, ainsi que des workflows de remédiation pour les casts v2. Elle met l'accent sur la séparation des opérations (planification, validation, génération, révision) et exige une autorisation explicite de l'utilisateur avant toute action payante ou de retry inconnu. Grâce à un système de références acceptées et de métadonnées d'origine, elle garantit la cohérence des actifs générés, tout en offrant une vue d'ensemble via des commandes comme `doctor`, `models`, `usage`, `storage` et `migrate`.

Compatible avec~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/maxiplux/framechord/tree/HEAD/.agents/skills/framechord

Demander à votre IA préférée

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

Documentation

Que fait framechord ?

Utilisez le binaire framechord depuis n'importe quel agent capable d'exécuter un processus. S'il est manquant, lisez installation pour les installateurs publics, l'installation locale utilisateur et les mises à jour explicites, ou expliquez cargo install --path /path/to/framechord pour une version source. Ne changez pas d'outils médias et n'effectuez pas d'appels API fournisseur dans la compétence.

Les projets mediaagent/ existants sont pris en charge sur place. Lisez renommage et projets hérités avant de mettre à niveau une ancienne installation ; utilisez les chemins data_directory retournés plutôt que de supposer le nom du dossier.

Lisez commandes pour chaque commande et drapeau de cette version du binaire ; flux de travail pour les sorties, les limites, la récupération et la révision ; création pour les modèles de personnages et d'infographies. Les schémas lisibles par machine se trouvent dans references/schemas/. Les modèles exportés sont dans templates/.

Lisez continuité des personnages lors de la réutilisation des mêmes personnages à travers les scènes. Utilisez des références d'identité sélectionnées, les contrôles de fidélité pris en charge, et la comparaison avec les images originales réelles ; le succès de l'API n'établit pas la ressemblance.

Lisez vérifications de connexion lors de la vérification de la configuration ou des échecs de fournisseur/clé : doctor vérifie la présence hors ligne ; doctor --live s'authentifie explicitement avec des requêtes en lecture seule. Il prend en charge le filtrage par fournisseur, les délais d'attente et le JSON. Lisez l'état/les actions par fournisseur ; une authentification réussie n'établit pas la disponibilité de la génération/modèle/facturation.

Lisez voix lors de la découverte de voix, de la conception d'aperçus, de l'acceptation d'enregistrements autorisés, ou de la création/clonage/liaison explicite d'une voix de fournisseur sélectionnée. La génération d'aperçus, la création côté fournisseur, la liaison canonique et l'acceptation d'enregistrements sont des opérations séparées.

Lisez configuration et modèles actuels pour l'assistant terminal en boucle, les paramètres par défaut Google-first et une alternative explicite OpenAI, la conservation de la configuration .env du projet, les identifiants masqués et l'installation de la compétence dans le projet, la préparation à la configuration non interactive, les filtres de modèles et l'actualisation explicite du catalogue. Pour un seul actif, utilisez des drapeaux explicites fournisseur/modèle/entrée/sortie sans initialisation. Pour un travail répété, les agents utilisent init PATH --preset recommended --json --non-interactive, inspectent config status --json, et fournissent une configuration exacte avec config setup --file si nécessaire. Les utilisateurs humains du terminal exécutent init pour reprendre la configuration. Aucun appel fournisseur n'a lieu pendant l'initialisation. Les verrous de modèle de personnage existants sont conservés ; les identités de modèle retiré nécessitent une nouvelle version de personnage et des références acceptées par l'humain avant de générer à nouveau.

Préservez exactement les dialogues, paroles, nombres et étiquettes demandés. Utilisez une opération de planification explicite séparée lors de l'adaptation d'un article en podcast. Fournissez le texte de l'article dans un fichier local. Les personnages sont facultatifs ; lorsqu'ils sont sélectionnés, réutilisez leurs références acceptées et leur voix/fournisseur/modèle épinglés. Les actifs d'identité dérivés doivent utiliser le fournisseur/modèle enregistré de l'actif d'origine ; les remplacements conflictuels échouent. Préservez les métadonnées d'origine au lieu de copier la valeur par défaut du projet dans le YAML de tâche dérivée. Décrivez l'identité stable séparément de la pose, de la scène, de la prestation ou des vêtements temporaires. Les références candidates ont besoin de la sélection de l'utilisateur avant d'être acceptées.

Créez des fichiers à l'aide de modèles, puis validate. Inspectez generate --job ... --dry-run --json avant l'exécution lorsque les entrées sont nouvelles. Appelez la génération uniquement lorsqu'elle fait partie de la demande de l'utilisateur. Utilisez --json --non-interactive pour l'automatisation. Signalez honnêtement les chemins des artefacts retournés par le binaire et les tâches incomplètes.

Utilisez runs status, runs wait, runs reconcile et runs resume pour les exécutions enregistrées. Récupérez les résultats des fournisseurs pris en charge avant d'envisager une nouvelle tentative payante. Ne réessayez jamais silencieusement une demande payante inconnue ; --retry-unknown nécessite une autorisation explicite de l'utilisateur. Les révisions enregistrent la qualité séparément du succès de la génération. La révision ne révise pas automatiquement, et les révisions ne remplacent pas les références canoniques des personnages.

Lisez flux de travail de remédiation pour les casts v2, les entrées de planification sélectionnées, la vérification limitée, le stockage de référence, l'attachement de résultats récupérés, l'utilisation et les migrations. Les tâches/configurations/exécutions acceptent v1 et v2 ; les nouveaux casts et l'assemblage de podcasts nécessitent v2. Les autres versions de manifeste restent inchangées.

Utilisez plan --character MANIFEST --asset FILE pour sélectionner explicitement les dépendances ; le binaire les copie dans _inputs/. Pour une scène avec plusieurs personnages enregistrés, utilisez des entrées cast et des fichiers de direction spécifiques à la tâche. Exigez des références acceptées et des lignées de modèles d'origine compatibles ; ne réécrivez jamais les profils pour faire disparaître un conflit.

Pour les tests d'acceptation, prévisualisez verify --suite SUITE --json et obtenez l'approbation du lot payant limité avant --execute --preview-hash HASH. Les informations d'identification manquantes sont ignorées, pas transmises. La création/le clonage de voix utilisent leurs propres commandes et approbations explicites de persona. review report compare les artefacts générés et les références enregistrées ; seules les sélections réelles de l'utilisateur autorisent l'acceptation canonique.

models --live lit les catalogues des fournisseurs ; la visibilité n'est pas un droit de génération. usage signale honnêtement les unités retournées et les coûts inconnus. storage plan --output cleanup.yaml prépare un aperçu de nettoyage conservateur en dehors de framechord/ ; storage clean --plan cleanup.yaml ne supprime que les blobs non référencés après revalidation. migrate --kind job|config|run --file FILE prévisualise ; --apply conserve une sauvegarde v1. Pour les tâches incertaines, runs recover nécessite l'empreinte enregistrée et les preuves de réconciliation, puis runs resume publie la réponse fournie sans régénération.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills associés