Contexte
La crypto bouge tous les jours. Repérer les nouveaux tokens de qualité, les contextualiser, en parler avant les autres — c'est un travail à temps plein. Moon List a deux objectifs :
- Côté éditorial : une newsletter quotidienne qui résume les 3 à 5 pépites du jour.
- Côté distribution : un pipeline d'automation qui transforme chaque édition en short vidéo et la publie automatiquement sur YouTube Shorts, TikTok, Instagram Reels, et Twitter/X via le persona "The Sheriff".
Le challenge métier
Produire à la cadence quotidienne sans y passer ses journées. La réponse : industrialiser de bout en bout — depuis la découverte du token jusqu'à la publication finale, en passant par une chaîne de filtrage et de synthèse qui ne garde que la pépite.
Le flow opérationnel — en 6 étapes
Le pipeline va de la découverte de tokens à la publication multi-canal en une chaîne sans intervention humaine :
- 1. Découverte — scan des nouveaux tokens du jour via les APIs CoinGecko et CoinMarketCap.
- 2. Recherche préliminaire — collecte rapide de données brutes pour chaque token candidat (volume, market cap, holders, âge, social signals).
- 3. Scoring de pertinence — filtre algorithmique pour retenir les 3 à 5 tokens les plus intéressants du jour pour publication immédiate. Les autres candidats qui passent un seuil minimum sont stockés dans une database de projets pour alimenter une diffusion continue : pool de retargeting éditorial, comparatifs, follow-ups quand la traction évolue.
- 4. Recherche approfondie — Grok 4.1 fait du deep research sur les tokens retenus (contexte, équipe, traction, signaux on-chain).
- 5. Résumé haute densité — un LLM rédige avec la voix éditoriale "The Sheriff". Format dense et lisible en 2 minutes.
- 6. Repurpose multi-canal — deux branches en parallèle :
- Pipeline vidéo : Remotion + TTS génèrent 4 formats publiés sur YouTube Shorts, TikTok, Instagram Reels, Twitter/X (via PostForMe + TryPost)
- Newsletter : email HTML délivré via Resend API
CoinGecko + CoinMarketCap"] A --> B["2. Recherche préliminaire
data brute par token"] B --> C{"3. Scoring de pertinence"} C -->|top 3-5 du jour| D["4. Recherche approfondie
Grok 4.1 — contexte / team / traction"] C -->|seuil minimum| DB[("Database projets
retargeting éditorial
diffusion continue")] DB -.réinjecté plus tard.-> D D --> E["5. Résumé haute densité
LLM voix Sheriff"] E --> V["6a. Pipeline vidéo
Remotion + TTS"] E --> N["6b. Newsletter HTML
Resend API"] V --> V1["YouTube Shorts
via PostForMe"] V --> V2["TikTok
via TryPost"] V --> V3["Instagram Reels"] V --> V4["Twitter/X — The Sheriff"]
Stack technique
- Python 3 + async
- CoinGecko (rate-limited 333 calls/day)
- CoinMarketCap
- Grok 4.1 (recherche contextuelle)
- Tkinter GUI pour pilotage manuel
- Remotion (React/TypeScript)
- Templates 1080 × 1920 multi-formats
- OpenCV / PIL pour overlays
- TTS Edge-TTS · Qwen-TTS · Fish Audio
- Resend API (newsletter HTML)
- PostForMe (publishing API)
- TryPost (multi-plateforme)
- YouTube API + IG Graph API
- publishing_log.csv (1 307 lignes)
- Suivi par token, par plateforme, par persona
- A/B testing thumbnails et hooks
3 décisions d'architecture clés
1. Persona "The Sheriff" comme couche d'éditorialisation
Plutôt que de publier "Théodis dit que ce token est bon", j'ai créé un persona narratif — "The Sheriff" — qui a sa voix, son humour, sa cadence. Le pipeline applique automatiquement ce vernis éditorial. Avantage business : le persona scale, l'humain non. Avantage Salesforce : c'est exactement la logique de Marketing Cloud Personalization — un même message décliné en N versions par segment.
2. Multi-TTS pour éviter le risque vendor lock-in
J'ai 3 moteurs TTS branchés : Edge-TTS (gratuit Microsoft), Qwen-TTS (Alibaba) et Fish Audio (payant premium). Si l'un casse ou augmente ses prix, le pipeline bascule. C'est la version "amateur" d'une stratégie multi-cloud — et c'est suffisant pour une opération solo.
3. Logging exhaustif via CSV plutôt que database
1 307 lignes de publishing_log.csv tracent
chaque publication : token, plateforme, heure, persona, statut. Pas de base SQL, pas d'infra. Juste un CSV
versionné. C'est de la traçabilité 80/20 — suffisante pour audit et A/B testing rétro.
Résultats
Lien direct avec Salesforce
Moon List est un Marketing Cloud Engagement Studio version "1 personne". Voici la cartographie :
- 1 300+ publications multi-plateformes = Calendrier Marketing Cloud Engagement Studio avec splits par canal.
- Persona "The Sheriff" = Marketing Cloud Personalization — un message, N décliné.
- Crypto Scout enrichi via 3 APIs externes = Enrichissement de leads via Salesforce Connect / DataCloud.
- Newsletter HTML via Resend + tracking d'opens/clics = Marketing Cloud Email Studio avec Web Analytics Connect.
- publishing_log.csv (audit trail) = Salesforce Field History Tracking + Reports d'audit.
- Fallback multi-TTS = pattern Apex retry / fallback service côté plateforme.
Lessons learned
- L'éditorial peut être un actif réutilisable — Le persona "Sheriff" a survécu à 4 itérations produit, alors que la stack a changé 2 fois.
- La distribution multi-plateforme coûte cher en orchestration — chaque plateforme a ses formats, ses quotas, ses moments idéaux. PostForMe a sauvé ~10h/semaine.
- 1 307 publications n'ont pas suffi à exploser — la cadence sans angle éditorial fort plafonne vite. Leçon : itérer sur le message, pas sur le volume.
- dogemapcoin a été testé comme compte X secondaire — la mécanique de variant de marque marche, mais demande de la rigueur. C'est l'équivalent d'un Brand Workspace Marketing Cloud.