Que fait ig-viral ?
La compétence de recherche. Tout le reste de ce paquet écrit ; celle-ci va regarder. Exécutez-la mensuellement, pas quotidiennement. Les formules durent une saison.
Un outil vit dans ce dossier et s'exécute :
python3 swipe.py captured.tsv --out ~/.claude/instagram/swipe.md
L'idée unique qui rend cela utile
Les vues brutes ne sont pas une preuve. Un compte avec deux millions d'abonnés qui fait 400 000 vues a eu un mardi tranquille. Un compte avec quatre mille abonnés qui fait 400 000 vues a trouvé quelque chose, et ce quelque chose est reproductible.
Donc tout ici est classé sur le multiple aberrant : vues divisées par la médiane récente de ce compte. Tout ce qui dépasse 3x est un signal. Tout ce qui est en dessous de 1,5x est un jour normal pour ce compte et ne vous apprend rien, peu importe la taille du nombre.
Collectez des comptes à environ 10x de la taille de l'utilisateur. Une formule qui fonctionne à 2M d'abonnés fonctionne souvent parce qu'elle est à 2M d'abonnés.
Étape 1 : choisir les comptes
Demandez à l'utilisateur 6 à 12 comptes, ou proposez-les et obtenez l'approbation :
- 4 directs - même niche, même offre, légèrement en avance.
- 4 adjacents - niche différente, même public. C'est là que les formats sont empruntés avant que quiconque dans la niche ne les ait.
- 2 à 4 plus gros - comptes beaucoup plus grands, uniquement pour le format, jamais pour le rythme ou le ton.
Demandez-leur également d'ouvrir leur propre collection Sauvegardée. C'est le corpus le plus rapide et le plus pertinent qui existe, et il est déjà filtré par leur goût.
Étape 2 : aller voir
Utilisez l'outil de navigation que cette session a actuellement : un navigateur intégré à l'application, une extension de navigateur connectée au Chrome de l'utilisateur, ou un outil d'utilisation d'ordinateur. Il n'y a pas d'API pour cela et il n'est pas nécessaire qu'il y en ait une, car le volume est suffisamment petit pour être lu.
Règles non négociables :
- Ne jamais vous connecter à Instagram au nom de l'utilisateur et ne jamais demander de mot de passe. Si une page nécessite une connexion, c'est l'utilisateur qui est déjà connecté. Pilotez son navigateur en sa présence, ou demandez-lui de coller.
- C'est de la lecture, pas du scraping. Dix comptes, une douzaine de Reels chacun, à vitesse humaine. La collecte automatisée en volume viole les conditions d'utilisation d'Instagram et fait bloquer les comptes. Ne construisez pas de crawler, n'utilisez pas de service de scraping et ne bouclez pas cela en arrière-plan.
- Copiez la formule, jamais la vidéo. La forme de l'accroche, la structure, la durée, le motif des coupures. Pas leur script, pas leur voix, pas leur montage. Attribuez chaque ligne du fichier de réutilisation au compte dont elle provient.
Ce qu'il faut capturer par Reel, dans les mots du créateur :
| champ | notes |
|---|---|
| compte | pseudo |
| abonnés | depuis le profil |
| médiane | estimez les 12 derniers Reels et prenez le nombre de vues médian |
| vues | ce Reel |
| accroche | la première ligne, parlée ou à l'écran, textuellement y compris la mauvaise grammaire |
| à l'écran | la première carte de texte, si différente |
| durée | secondes |
| cta | ce qu'ils ont demandé à la fin |
La médiane est importante. Sans elle, vous revenez à un classement par nombre d'abonnés, ce que cette compétence vise à empêcher.
Quand Instagram n'en montre pas assez : la même grammaire d'accroche fonctionne sur YouTube Shorts, où les compteurs de vues et les transcriptions sont publics et aucune connexion n'est nécessaire. C'est un deuxième corpus légitime, et l'accroche parlée est plus facile à obtenir :
# compteurs de vues pour les shorts d'une chaîne
python3 -m yt_dlp --flat-playlist --playlist-end 40 -J \
"https://www.youtube.com/@HANDLE/shorts" > channel.json
# la première ligne parlée d'un short, à partir de ses sous-titres automatiques
python3 -m yt_dlp --skip-download --write-auto-subs --sub-langs "en.*" \
--sub-format json3 -o hook "https://www.youtube.com/watch?v=VIDEO_ID"
Prenez chaque mot du sous-titre avec un timestamp inférieur à 3,0 secondes. C'est l'accroche, dite, pas écrite.
Étape 3 : classer
Remplissez un fichier séparé par des tabulations avec une ligne d'en-tête et exécutez le script :
account followers median views hook
@someone 48000 11000 412000 nobody tells you your first 30 reels are supposed to flop
python3 swipe.py captured.tsv --out ~/.claude/instagram/swipe.md
Il calcule le multiple aberrant, nomme la formule d'accroche en utilisant les mêmes 26 formules que /ig-reel écrit, note chaque accroche avec hookscore.py, et affiche ce qui sépare le tiers supérieur du tiers inférieur.
Étape 4 : dire ce que cela signifie, avec prudence
Rapportez trois choses et pas plus :
- Quelles formules sur-performent dans le tiers supérieur, avec les comptages. Deux formules apparaissant quatre fois chacune sur six comptes est une découverte. Une apparaissant deux fois ne l'est pas.
- Ce que le tiers supérieur a en commun structurellement que le tiers inférieur n'a pas : longueur de l'accroche, si le payoff est visuel, si la première image bouge, où se trouve la demande.
- Les lignes non classifiées. Chaque accroche que le classifieur n'a pas pu nommer est soit du bruit, soit une formule qui n'est pas encore dans
hooks.json. Lisez-les manuellement. C'est la colonne la plus précieuse de la sortie et c'est la raison pour laquelle le script affiche le comptage.
Ensuite, indiquez la taille de l'échantillon et le niveau de confiance en termes simples. Quarante Reels sur six comptes soutiennent une affirmation. Douze pas, et le dire est la différence entre la recherche et les horoscopes.
Étape 5 : transformer en quelque chose à tourner
Pour les trois meilleures formules, écrivez la version de l'utilisateur : leur propre histoire, leur propre nombre, dans la forme qui fonctionne. Remettez chacune à /ig-reel avec l'ID de formule déjà choisi.
Ne rendez jamais "fais un Reel comme celui-ci". Rendez une ligne d'accroche qu'ils pourraient dire demain.
Sortie
SWIPE · 38 reels · 7 comptes · baseline : médiane du compte
ABERRANTS (au-dessus de 3x)
38,4x accroche 86 #3 Nobody Tells You @acct_a 412 000 (médiane 10 700)
11,2x accroche 79 #9 The Steal @acct_c 180 000 (médiane 16 100)
...
CE QUI SUR-PERFORME
#3 Nobody Tells You x5 dans le tiers supérieur, 0 dans le tiers inférieur
#2 Negative Command x4
longueur médiane de l'accroche 8 mots en haut, 19 en bas
NON CLASSIFIÉ (6)
Deux d'entre eux ont la même forme et elle n'est pas dans hooks.json : une accroche qui
s'ouvre sur le commentaire de quelqu'un d'autre lu à voix haute. À ajouter.
VOTRE VERSION
#3 "Personne ne vous dit que les 20 premières propositions sont censées perdre."
...
Écrivez le fichier de réutilisation dans ~/.claude/instagram/swipe.md. /ig-reel et /ig-plan le lisent tous les deux, ce qui est le but : après que cela s'exécute une fois, le reste du paquet travaille à partir des propres preuves de l'utilisateur au lieu de valeurs par défaut.
Rien n'est publié, suivi, aimé ou envoyé par message par cette compétence. Elle lit.