LinkedIn Auto est un système en boucle fermée : écriture dans Notion → publication automatique le lundi → récupération des stats → analyse des patterns → amélioration du prochain post.
Le principe fondateur : automatiser la friction, pas la création. L’écriture reste 100% manuelle. Tout ce qui est mécanique — publier, timer, tracker — est délégué.
Le problème
Pendant 3 mois, j’ai publié manuellement chaque lundi. Le texte était toujours prêt. Mais la dernière étape — ouvrir LinkedIn, coller, formater, programmer — me coûtait plus que prévu.
Pas en temps. En friction mentale.
Ouvrir LinkedIn pour publier, c’est aussi scroller. Lire. Répondre. Vérifier les stats. 15 minutes plus tard, le post n’est toujours pas sorti.
J’ai automatisé cette étape. Pas l’écriture.
Les 3 workflows
Workflow A — Auto Publisher
Le post est écrit dans Notion. Quand il est marqué “Prêt”, rien d’autre à faire.
Le lundi à 8h25, le système vérifie s’il y a un post prêt. S’il y en a un, il est publié automatiquement via l’API LinkedIn. L’entrée Notion est mise à jour avec le statut “Publié” et l’URN du post. Je reçois une confirmation Telegram.
Si rien n’est prêt : alerte Telegram. Pas de silence, pas d’oubli.
Cron lundi 08h25
↓
Query Notion Calendrier Éditorial
(Status = "Prêt", trié par PlannedDate, limit 1)
↓
Post trouvé ?
Non → Alerte Telegram "Rien à publier cette semaine"
Oui → POST /rest/posts (LinkedIn API)
↓
Update Notion (Status → "Publié", LinkedInPostURN, PublishedAt)
↓
Confirmation Telegram
Workflow B — Stats Collector
Une commande Telegram déclenche la récupération des statistiques de tous mes posts publiés via la Member Post Analytics API de LinkedIn. Les données atterrissent dans Notion, et un rapport analysé par GPT-4o-mini est envoyé sur Telegram.
Telegram "/stats"
↓
Query Notion (Status = "Publié", LinkedInPostURN non vide)
↓
Pour chaque post :
GET /rest/posts/{postUrn}/statistics
↓
EngagementRate = (likes + commentaires×3 + partages×5 + saves×4) / impressions × 100
↓
Update Notion (Impressions, Likes, Comments, Shares, EngagementRate, StatsUpdatedAt)
↓
Aggregate → GPT Analysis
(patterns : type de post, longueur, hook, concept utilisé, heure, jour de publication)
↓
Rapport Telegram
(Top 3 posts · Bottom 3 · Patterns détectés · Recommandation pour le prochain post)
Workflow C — Creator Analyzer
Sur commande Telegram, analyse les 10 derniers posts d’un compte LinkedIn public via Apify. GPT-4o extrait les règles d’écriture implicites, les patterns de hook, les corrélations format/engagement. Utile pour benchmarker d’autres créateurs ou comprendre ce qui performe dans un secteur.
Telegram "@nom_compte"
↓
Apify API — Start Job (LinkedIn Profile Posts scraper, 10 posts max)
↓
Poll jusqu'à status SUCCEEDED
↓
Get Results (texte + likes + commentaires + date de chaque post)
↓
GPT Analysis
(règles d'écriture implicites, patterns hooks, corrélations format/engagement,
formules récurrentes, ce qu'on peut réutiliser)
↓
Rapport Telegram
(5 à 7 règles extraites · exemples tirés des posts · score d'engagement par post)
Protocole WRITING_RULES — la vraie valeur du système
La publication automatique est la partie visible. La partie centrale, c’est la boucle d’apprentissage construite autour :
Chaque post teste une seule variable — une règle éditoriale isolée. Après 3 posts avec cette règle, elle est validée, invalidée, ou prolongée à 5 posts si le signal est ambigu. Les règles validées entrent dans un référentiel permanent qui s’enrichit à chaque publication.
Règles actuellement en test : accroche polarisante, phrase punch finale, accroche chiffre-contraste.
Ce protocole évite le piège de la Loi de Goodhart : l’objectif n’est pas de maximiser l’EngagementRate — c’est de comprendre ce qui le fait varier, et pourquoi. La mesure reste un outil d’apprentissage, pas une fin en soi.
Page /analytics — tout est public
Toutes les stats, le calendrier de publication et la timeline des améliorations sont rendus publics sur la page /analytics de ce site — mis à jour automatiquement après chaque sync.
Ce qui s’y trouve :
- Calendrier de publication — grille mensuelle avec statut de chaque post
- Stats globales — impressions totales, EngagementRate moyen, top post
- Ranking des posts — triés par performance, avec type, règles appliquées et stats
- Timeline des améliorations — chaque règle validée ou invalidée avec son impact mesuré
La transparence sur ses propres chiffres est un positionnement différenciant. Les recruteurs, clients et co-fondateurs voient la progression en direct. La timeline des améliorations est en elle-même du contenu : elle montre comment un système s’améliore par itérations mesurées.
Pourquoi ne pas automatiser l’écriture ?
Parce que c’est la seule partie que je trouve vraiment utile — pour moi d’abord.
Le process réel : un sujet surgit d’un podcast, d’une discussion, d’un truc lu. Je brainstorme avec l’IA à la voix — ça ressemble à un débat, pas à de la rédaction. On détermine l’angle, on challenge l’intuition, on cherche les sources qui corroborent ou contredissent. À la fin, il y a un post structuré, sourcé, avec un angle qui ne ressemble pas à ce qui circule déjà.
L’IA est dans la boucle, mais elle ne pilote pas. Elle aide à creuser, pas à remplir.
Deux raisons de garder la main :
L’angle — L’IA propose des angles que tout le monde propose déjà. Les sujets sur lesquels tout le monde a un avis, formulés de la façon dont tout le monde les formule. Un post reconnaissable, c’est un angle que l’IA n’aurait pas sorti seule — une observation personnelle, un contre-pied, une connexion entre deux choses qui n’ont a priori rien à voir.
La voix — Un post généré ressemble à un post généré. Ce que les gens lisent sur LinkedIn, c’est du vécu, des détails réels, une façon de penser qu’ils reconnaissent. Ça s’acquiert par itérations, pas par prompt.
Il y a aussi une raison plus simple : j’écris d’abord pour moi. Aller en profondeur sur un sujet, chercher les sources, trouver ce qui tient — c’est ma façon d’apprendre. Le post est le sous-produit. La recherche est la valeur.
À terme, quand il y aura assez de texte pour qu’un modèle reconnaisse vraiment la voix et les angles, l’automatisation de l’écriture redeviendra une question ouverte. Pas avant.
Stack
| Composant | Technologie | Rôle |
|---|---|---|
| Orchestration | n8n cloud | Workflows A + B + C |
| Publication | LinkedIn API v2 (w_member_social) | POST /rest/posts |
| Stats | LinkedIn Community Management API | Member Post Analytics |
| Source de données | Notion API | Calendrier Éditorial |
| Notifications | Telegram Bot API | Confirmations + alertes + rapports |
| Analyse patterns | GPT-4o-mini | Rapport stats hebdo |
| Analyse créateurs | Apify (harvestapi/linkedin-profile-posts) | Workflow C |
| Page analytics | Astro 5 + Notion API read-only | Rendu public des stats |
| Déploiement | Vercel | Rebuild déclenché par webhook après sync stats |
Statut
| Composant | Statut |
|---|---|
| Workflow A — Auto Publisher | ✅ Opérationnel |
| Workflow B — Stats Collector | ✅ Opérationnel |
| Workflow C — Creator Analyzer | 🔜 À venir |
| WRITING_RULES | ✅ Actif — 3 règles en test |
Page /analytics | 🔜 En construction |
Construit par Thomas Silliard — en production depuis avril 2026.