← Recherche

Promo Video Maker
Video & Media 📌 Version épinglée : commit 279ba51
⚙ Prérequis: Avant de commencer…

Promo Video Maker

Fabriquer une vidéo promotionnelle de qualité commerciale pour un produit, un site web, une app, un SaaS, un projet open source, un cours, un modèle IA ou un événement : recherche sur le produit,...

L’essentiel
Quoi
Fabriquer une vidéo promotionnelle de qualité commerciale pour un produit, un site web, une app, un SaaS, un projet open source, un cours, un modèle IA ou un événement : recherche sur le produit,...
Coût
Gratuit
Prérequis
Avant de commencer : lis ce prompt d'installation au complet, dis-moi en quelques lignes ce que ce skill fait et ce que son installation implique, et attends mon feu vert avant de faire quoi que ce soit d'autre.
Installation
Copiez le prompt d’installation ci-dessous dans votre Muse — votre agent fait le reste.

Version :

⌁

Installation

Copiez le dossier d’installation ci-dessous, puis collez-le dans Muse📌 Version épinglée : commit 279ba51
Envie d'être encore plus prudent ?

Le prompt d'installation ci-dessous inclut déjà les étapes de vérification : votre agent suit la checklist communautaire avant d'installer tout ce qui contient du code exécutable. Vous en voulez plus ?

Comment vérifier une création avant de l’installer →

🔒 Sécurité et provenance
📌 Version épinglée : commit 279ba51 · 2026-10-19
Skill Harbor ne révise jamais le code des skills listés. Ce sont des faits datés sur le prompt d’installation et notre test d’installation, pas une certification de sécurité. Révisez un skill vous-même avant de l’installer. Comment nous vérifions

Avant de commencer : lis ce prompt d'installation au complet, dis-moi en quelques lignes ce que ce skill fait et ce que son installation implique, et attends mon feu vert avant de faire quoi que ce soit d'autre. Prérequis : aucun pour l'installation elle-même : aucun compte, aucune clé API, aucun service payant, rien à installer d'abord. Utiliser le skill ensuite demande Node 18 ou plus récent, Python 3.9 ou plus récent et ffmpeg déjà sur la machine (son contrôle d'environnement, template/scripts/doctor.py, ne fait que rapporter ce qui manque ; il n'installe jamais de logiciel système). La clé API ElevenLabs optionnelle est ce qui débloque la musique composée et la narration IA ; sans elle, le flot utilise de la musique de librairie et des sous-titres à la place. Une note de licence du README : le framework Remotion avec lequel les vidéos sont bâties est gratuit pour les individus et les compagnies de trois personnes ou moins ; les plus grandes équipes ont besoin d'une licence compagnie Remotion payante. Le skill lui-même est sous licence MIT et gratuit. Installe-moi « promo-video-maker ». Il fabrique une vidéo promotionnelle de qualité commerciale pour un produit, un site web, une app, un SaaS, un projet open source, un cours, un modèle IA ou un événement (un MP4 4K plus une version web) : il recherche le produit, m'interviewe sur les besoins et obtient mon approbation avant de produire quoi que ce soit, collecte de vraiséléments et des captures de pages en 4K, cale la musique sur la grille de temps, ajoute une narration IA quand elle est configurée, mixe, vérifie le résultat automatiquement et livre. Dépôt : https://github.com/liyupi/ai-promo-video-maker (le skill est tout le dépôt au commit épinglé : SKILL.md à la racine, avec AGENTS.md, references/ et template/) Version épinglée : installe le code au commit 279ba5178c3c80d472b84ac2efa36c6fca33bba2 exactement. Ne substitue pas une version plus récente. Si ce commit est inaccessible, arrête-toi et dis-le-moi. 1. Clone https://github.com/liyupi/ai-promo-video-maker dans un dossier temporaire, place-toi au commit 279ba5178c3c80d472b84ac2efa36c6fca33bba2, et copie tout le dossier du dépôt (tout sauf le dossier .git) de ce checkout. Compare ensuite chaque fichier aux empreintes enregistrées pour cette fiche le 2026-10-19 : [FINGERPRINTS] - .env.example: SHA-256 0779c48499289b5bffc5d5289bc910d365d613e3e51ba8ed6ef4d27e465cc61d - .gitignore: SHA-256 6450cdfceb2a3c1903fd36268e7b9b80cab7b095bc06f4ce3fc8400bb1a6b4a9 - AGENTS.md: SHA-256 4f9f26be57f7c508f4776886cc5c2c45f289e501ceaed8ff957c3cea20c42d13 - CLAUDE.md: SHA-256 b0084658487ba12849552ac3c427ffeabf8fd7c05fa933618bebc6486c921c55 - LICENSE: SHA-256 4cbefbfd342922bb9d70500dc71c9711d097df0ead67bae4c302e2572f5bd1a3 - README.md: SHA-256 6b50bb1d06d4bd9462d154dde75a40ec411ef9b558512d9dba52050254da0cc6 - SKILL.md: SHA-256 05a421d462a928caca933cddaaed2b2de2b782581f067c91268834b4f784a7fc - docs/images/case-ainav.jpg: SHA-256 3ea6bfb490f1aac1f626b33a18ad47c06c0ecbbbe9f1106e2fe3bb5ae3ac800a - docs/images/case-codenav.jpg: SHA-256 67ae0e5c285833bd2c1f3b588ff2a999f9981c85de7c2ac72906a7abd1d1ede9 - docs/images/case-fable.jpg: SHA-256 c44a95abde33140983925a0d88402caf7e0c65832810c93706a31b16403db347 - docs/images/case-mianshiya.jpg: SHA-256 6909044f0001359a40a10e25a9a46ec8b5bb2c033ab5805edff1c6f22383e9a0 - docs/images/case-vibe.jpg: SHA-256 6d8b07ef1dc34a849a18e06f7649f7758095234ce6947f831728538a5ef32158 - docs/images/showcase.gif: SHA-256 5b14d7cbc39b91206a76676ca856f56369728be4556913ff29ab4a6cdca71c60 - docs/images/styles-ainav.jpg: SHA-256 83fabec546164db53681c9b36c1d81d6fe823d020006e3a85646fb67e610c104 - docs/images/styles-mianshiya.jpg: SHA-256 4684bd4c5f16312ab743379b32a4b5ce77287d6d74ab498ad4bacd6a25361def - outputs/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - references/校验清单.md: SHA-256 22bbdb9e95681a3784dd89b4c3a2e31ae89b62012637d1f343b0225afe9550a2 - references/案例复盘.md: SHA-256 055b4ff20613eeab2c41bdd4f08f9776c5fc8c4a0d4535205e4e2dfe0579d551 - references/素材获取.md: SHA-256 b08e96858823357c29ded2a585327b2adeda8ddc1188770a4baed8d0fcdc065b - references/踩坑记录.md: SHA-256 c248eff24ce32e7268695499aa1984c9f532c052b782760d8411d37f7c1b68e0 - references/配音.md: SHA-256 c145ed43b5d2d36926eb1cefaf6ec9f8c942d4dd23311dda8f2f06e3a492888c - references/需求问询.md: SHA-256 6554bac6a2da64abb8f790baec6400cf190da7409761b6d16d0901565fa780cb - references/音乐与卡点.md: SHA-256 cfb10206b4c46273a387c540c3f4236f7e7c3177379bc26090c1fda1b484f224 - references/风格方向.md: SHA-256 ad6692272ba1f84e607accdc0a2ed546667a7e21b40405cedccb88a01ea87ad6 - template/.gitignore: SHA-256 d949b82250919879af0759c44c199cd4f966f85ac3f324df75ffeb3e589a9b7f - template/audio-src/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - template/eslint.config.mjs: SHA-256 7f2ca640409fd597965bedf929073b9a74f143643e1711150c4cac3b6ec5c80d - template/fonts-src/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - template/fonts.json: SHA-256 b437f6f2b0afdd51b63dd1dde88f74861ad6f6c7b01a5a8fb3e920f1922fc579 - template/package-lock.json: SHA-256 050d86e0d271e545cd4d2ee3368438153343fefc970b4894d4ea1ef57c2e87e4 - template/package.json: SHA-256 58366900cf98a0865ae067a0a82708c4ea88ca8c0e014368374928c4bd738217 - template/public/audio/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - template/public/fonts/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - template/public/img/.gitkeep: SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - template/remotion.config.ts: SHA-256 22beb54e7dc3e01fc2b479471d7317ede7797c993b50fac658356187916bc59d - template/requirements.txt: SHA-256 72fb3d88c04fc7b9ea36abd797ea9ce9f7b860f03e04ec693d71aa8c9ab5b9ff - template/scripts/audiolib.py: SHA-256 950d965438698b74771c306ec386506fc8bf95e5be593c717e96bc01b048c24c - template/scripts/check_assets.py: SHA-256 2444205d4339e19e952ed3360f3c3cc97583c535f75a2685144a2930d18ea5e2 - template/scripts/check_video.py: SHA-256 cfd391e192c172007751bcb4b97e321bfd4ca25ee774437f098308b3d8ee468a - template/scripts/doctor.py: SHA-256 b4ac59d40395318f3ab71171a5657af2999f47b68138b79a7e59756b5d97151f - template/scripts/elevenlabs.py: SHA-256 bd8ca6957fdd5f8ac1987101ca3b9b58e06d38d02c7380fce6537b5ab17f7dac - template/scripts/fonts.py: SHA-256 56c5989796a9359f86703e0c0b90010a64a1137f052ebaea00163977d58adcc7 - template/scripts/images.py: SHA-256 2c65dacb0898e5a82e689461dd4bc58cd2b41e13623da58bd3e36b764ef421a5 - template/scripts/labelfont.py: SHA-256 09fbef81945f72c9b7e43dbb77446913923826d540dd4a07d5da2d6e8b33a5dd - template/scripts/mix.py: SHA-256 34c0186ebc4ac3f5fdd95463c9499db639a64894ec1d9787f6d6230bde4f9537 - template/scripts/music.py: SHA-256 3293d1deba035beae4335fcf4110a56752d7f9c3edd0792adf1531b7924b80d9 - template/scripts/sheet.py: SHA-256 d8f37fdd2ec39798aa99f41226aa7c56897a4612c8c39b1f31c0f655f0f97b5e - template/scripts/shot.py: SHA-256 004b6b2c5783bc09df8c080c83382f4a62c93b75f9e664cac439e45a884ccdd8 - template/scripts/snapshot.js: SHA-256 b77a3816dece60886c90cd020159483ed021446a687c3b78bd177759e76e5014 - template/scripts/snapshot.py: SHA-256 f5da159604b4d31d4051c7af0b9a155b60bf13e2576840c59a5171da8cd70257 - template/scripts/stills.mjs: SHA-256 c854f12a13bbb9c2d2848f86cba7ab370fc71441c3c35d219693da3bdf07fe1e - template/scripts/sync_template.py: SHA-256 540dd8bd128dac7af4fbccac849bcf11c52e6464a99d9bc7f9841576e4184354 - template/scripts/xgrab.py: SHA-256 206f812b0eaa214bba68653abc59bb2f70886efdaa3c88d6fb3c870c27a8f8bc - template/src/Promo.tsx: SHA-256 32d5739feb038224c02f8bb02631256e2aa2330b5a6befaa83e8cf408f478edc - template/src/Root.tsx: SHA-256 7fd1b6c7a0b88c246c0ffe0002ed2f76d63003fdb5f1db3d8b272daa73203773 - template/src/assets.ts: SHA-256 72fdcd9296c743506ac43d8c5ad06d568fc2c913be0b187d0a71a16e7a481729 - template/src/components/BrowserFrame.tsx: SHA-256 4e892d79b7ac67442516a89d297f566cf9fb04181f02e1ffb188b04355c55017 - template/src/index.css: SHA-256 3dd44199d74abfd5d2404ac2eba755dafe0ecefd7a26ba4023531c37e6170f52 - template/src/index.ts: SHA-256 957e481dd33a29b4a55ae0e95dbf763b7e48c37c427ca4bd1275faf34bc07a74 - template/src/lib/anim.ts: SHA-256 e35acfa6a6caa1a19d4c85d8f794f26ec2a325c77a72647a339707bff980ca19 - template/src/lib/fonts.ts: SHA-256 740450382607859e7f080369e91ef3b8e23e107a34065fca74da0b931287b629 - template/src/lib/theme.ts: SHA-256 c6bc92be3f13d008e91e6ef625d36a059211a41e05c8308f746502626c6688ed - template/src/scenes/Example.tsx: SHA-256 32d63990306cca2294a1d07e0b812a835870ae9ca6c9c26bcb6f765c580f446e - template/src/timing.json: SHA-256 af8c32d2b1e2b0bce867ab0c5eb5464002c5e6e17394d868dea53a8ead67e829 - template/src/ui/Clip.tsx: SHA-256 dc1ec6cc0c6e81fd78c17f39b515da8e237d81673bdcd69904246201f8d8dcd6 - template/tsconfig.json: SHA-256 d0ed6ad74a2acce1c17a98e919ca77b3d6e0ba6631511b3d5e961b8666df3942 - template/web/App.tsx: SHA-256 69c09940bb055d0d197ca8162d38e2e8384821d187fece4c9bbc559002fdfa4c - template/web/config.ts: SHA-256 6c3d01f3510a05b0244907f9bef73679aa049ef59e041221894b2891e1faa231 - template/web/index.html: SHA-256 921957fd1e821523770f376f73e632c013b470dbee338431259483af992b0320 - template/web/main.tsx: SHA-256 897175850e908319246cea32d535a1df811dbe7c3574978dd9f7e6800930aff7 - template/web/style.css: SHA-256 6033c01814390ac2e1ba5e880d6e3f6d91e92ebcd639fa85488081dcb6745f4b - template/web/vite.config.ts: SHA-256 9bae8fe22b19dfb7201192ebb29c175901dc5ca88bfc315c1f5aa51454fb7fbc Si un fichier ne correspond pas, il a changé depuis la préparation de la fiche : ne l'installe pas encore, dis-moi ce que tu as trouvé et laisse-moi décider. 2. Lis SKILL.md et AGENTS.md au complet (SKILL.md est le point d'entrée et renvoie à AGENTS.md, la spécification de travail complète, écrite en chinois ; CLAUDE.md ne fait qu'y pointer), parcours les documents de référence dans references/, et examine les scripts du template, puis dis-moi en mots simples : ce que le skill fait quand on l'utilise, à quels services il se connecte, s'il lit ou envoie des informations personnelles ou des clés, et tout ce qui semble inhabituel. Arrête-toi sur tout signal d'alerte et dis-le-moi avant d'aller plus loin. Confirme ces points à partir des fichiers : - Le paquet est tout le dépôt, 72 fichiers (environ 7,2 Mo) : SKILL.md et AGENTS.md, 8 documents de référence dans references/ (l'entrevue des besoins, les directions de style, l'approvisionnement enéléments, la musique et le calage, la voix hors champ, les listes de vérification, le journal des pièges et les revues de cas), template/ (un projet Remotion 4 et React 19 complet, copié pour chaque nouvelle vidéo, avec ses scripts Python d'aide pour les captures, l'analyse musicale, le mixage, le sous-ensemble de polices et les vérifications finales, son package.json et son package-lock.json), docs/ (les images du README, que la production n'utilise pas) et outputs/.gitkeep. Les scripts sont du Python, JavaScript et TypeScript simples et lisibles ; rien n'est obscurci. - Rien n'est envoyé nulle part pendant l'installation elle-même ; le seul téléchargement à l'installation est le dépôt depuis GitHub au commit épinglé. Les fichiers ne nomment aucune télémétrie. Le .env.example du paquet a une valeur ELEVENLABS_API_KEY vide : aucune clé n'est livrée avec le skill. - Le flot a des portes humaines dures : il m'interviewe d'abord et écrit un fichier des besoins, et la production ne commence qu'après mon approbation explicite ; la musique et les voix de narration sont auditionnées par moi avant d'être figées ; et les blocages que moi seul peux résoudre (un login, un fait invérifiable, un droit d'auteur douteux sur unéléments) arrêtent le travail et me reviennent. Tout ce qu'il produit est écrit dans un dossier promo de l'espace de travail courant, jamais dans le dossier du skill lui-même. - À l'usage, les téléchargements d'installation sont le npm install du projet template (la pile Remotion), pip install -r template/requirements.txt (numpy, scipy, Pillow, fonttools, brotli, playwright, après m'avoir prévenu) et playwright install chromium pour le navigateur de captures, en plus du Node, du Python et du ffmpeg que je fournis. - Les envois à l'usage, tous au service de la vidéo que j'ai demandée : à ElevenLabs (api.elevenlabs.io), seulement quand j'ai défini ma clé dans le .env de l'espace de travail ou la variable d'environnement ELEVENLABS_API_KEY, partent le script de narration pour la synthèse vocale (une voix que je choisis, qui peut être ma propre voix clonée de mon compte), les invites de composition pour la musique et les effets sonores, et l'audio du mix final pour une vérification de transcription Scribe ; à Mixkit (mixkit.co), quand il n'y a pas d'ElevenLabs, partent les recherches et les téléchargements de musique et d'effets de librairie gratuits ; pour la recherche, le flot lit les pages et sources officielles du produit avec la recherche, le fetch ou curl et l'API GitHub via gh, capture les vraies pages du produit en 4K avec Playwright (pour une page qui demande un login, son shot.py --login ouvre une fenêtre où je me connecte moi-même), et peut aller chercher le média original d'un post X via l'API publique fxtwitter avec template/scripts/xgrab.py, sans login. La source de chaqueéléments est consignée dans les notes de recherche du projet, et l'entrevue me demande les frontières de droits d'auteur avant que leséléments soient utilisés. 3. Quand je dis « yes, install », installe-le comme skill : copie tout le dossier du dépôt (tout sauf .git) dans le répertoire des skills de l'agent, dans un dossier nommé « promo-video-maker », en gardant les 72 fichiers. Les routes amont, npx skills add liyupi/ai-promo-video-maker -g ou cloner le dépôt et l'ouvrir comme projet, installent le même contenu ; l'une ou l'autre route convient tant que chaque fichier correspond aux empreintes. 4. Vérifie sans appels réseau : frontmatter valide, les 72 fichiers en place. 5. Indique ce qui a été installé, où, et ce qu'il me reste à faire moi-même (par exemple : avoir Node 18+, Python 3.9+ et ffmpeg sur la machine avant le premier usage, décider moi-même de fournir ou non une clé ElevenLabs, et nommer moi-même le produit à promouvoir ; utiliser le skill est une étape séparée qui ne commence que quand je le demande, et les téléchargements et envois à l'usage divulgués ci-dessus arrivent seulement à ce moment-là). GitHub est optionnel : si j'ai un compte GitHub ou la CLI gh, tu peux l'utiliser ; sinon l'accès public suffit. Ne jamais l'exiger sauf s'il figure dans les prérequis ci-dessus. Règles : ne touche à rien en dehors du dossier temporaire et de la cible d'installation. Si quelque chose semble anormal, arrête-toi et demande-moi.

?

Questions

Comment installer une création ?

Chaque fiche produit contient un prompt d’installation à copier-coller. Collez-le dans votre Muse et il installe la création pour vous — sans configuration manuelle.

Où va mon argent ?

Directement au vendeur. Skill Harbor ne traite jamais les paiements : le paiement se fait sur la page du vendeur, généralement via Stripe.

Que signifie le ✓ à côté du nom d’un créateur ?

Il signifie que nous avons confirmé l’identité de la personne derrière la fiche. Il ne dit rien sur le code lui-même — vérifiez toujours une création avant de l’installer.