X Post
Chaîne de publication automatisée et résistante aux anti-bots pour X (Twitter), exploitant des instances Chrome réelles contrôlées via le protocole Chrome DevTools (CDP).
Prérequis d'exécution (Avant de commencer)
Avant d'exécuter un script, vérifier les dépendances de l'environnement → references/runtime-setup.md.
Liste de vérification :
- Runtime Bun installé (
bun --version) - Google Chrome ou Chromium installé (ou définir
X_BROWSER_CHROME_PATH) - Première exécution : s'authentifier sur X dans la fenêtre Chrome ouverte (session sauvegardée dans
~/.local/share/x-browser-profile) - Pour la traduction vidéo :
yt-dlp,ffmpegetwhisper-cliinstallés
Si un outil requis est manquant, s'arrêter et informer l'utilisateur immédiatement.
Capacités et Carte de Navigation
Choisissez le flux de travail adapté à la tâche de publication :
| Type de contenu | Chemin du script | Détails et Référence |
|---|---|---|
| Texte et images | scripts/x-browser.ts | Publications simple/multi-images et fils de discussion → references/regular-posts.md |
| Publications vidéo | scripts/x-video.ts | Téléversement vidéo avec surveillance de transcodage → references/video-posts.md |
| Quote Tweets | scripts/x-quote.ts | Citer des tweets existants avec commentaire → references/quote-tweets.md |
| Articles longs | scripts/x-article.ts | Articles Markdown avec images intégrées → references/articles.md |
| Traduction vidéo | scripts/x-translate-video.ts | Extraction, traduction et incrustation de sous-titres → references/video-translation.md |
| Distribution universelle | bin/x-post.js | Claude, Marketplace, npx, Skills.sh et tous les agents → references/distribution.md |
| Dépannage | N/A | Solutions pour erreurs courantes → references/troubleshooting.md |
1. Publications régulières (Texte, Images et Fils)
Publier des tweets standard avec jusqu'à 4 images et réponses en fil.
# Mode aperçu (vérifie la zone de rédaction et garde la fenêtre ouverte 30s)
bun scripts/x-browser.ts "Exploration de l'automatisation agentic avec Antigravity !" --image ./screenshot.png
# Publier avec images et réponse en fil
bun scripts/x-browser.ts "Annonce de notre nouvelle version open-source !" \
--image ./banner.png \
--reply "Voir le dépôt ici : https://github.com/org/repo" \
--submit
- Détails, spécifications des images et enchaînement de fils →
references/regular-posts.md
2. Publications vidéo
Publier des vidéos (MP4, MOV, WebM) avec téléversement automatique et sondage de transcodage.
# Aperçu du téléversement vidéo
bun scripts/x-video.ts --video ./demo.mp4 "Regardez la présentation complète de l'architecture"
# Publier une vidéo avec citation source dans la réponse en fil
bun scripts/x-video.ts --video ./demo.mp4 \
"Benchmark de boucle de codage autonome" \
--reply "Benchmarké sur le dataset SWE-bench vérifié." \
--submit
- Limitations de durée, formats et états de téléversement →
references/video-posts.md
3. Quote Tweets
Citer un tweet public existant avec un commentaire personnalisé tout en préservant l'attribution source.
# Aperçu du quote tweet
bun scripts/x-quote.ts https://x.com/username/status/1234567890 "Perspective importante sur les agents LLM !"
# Publier le quote tweet directement
bun scripts/x-quote.ts https://x.com/username/status/1234567890 "Tout à fait d'accord avec cette analyse." --submit
- Normalisation des URL et sélecteurs de menu →
references/quote-tweets.md
4. Articles longs X (Markdown)
Convertir des documents Markdown avec titres, listes, citations, images de couverture et images intégrées en articles X (nécessite X Premium).
# Aperçu du brouillon d'article formaté
bun scripts/x-article.ts ./article.md --cover ./cover.png
# Publier l'article directement
bun scripts/x-article.ts ./article.md --submit
- Syntaxe du frontmatter et mécanisme des placeholders d'image →
references/articles.md
5. Traduction vidéo et flux de sous-titres
Télécharger des tweets vidéo en langue étrangère, transcrire l'audio via Whisper, générer des fichiers de traduction modifiables, brûler des sous-titres stylisés et publier avec attribution source.
# Étape 1 : Ingérer l'URL et créer un brouillon de traduction (/tmp/x-translate/<id>/translation.md)
bun scripts/x-translate-video.ts https://x.com/username/status/1234567890 --target-lang English
# Étape 2 : Modifier /tmp/x-translate/<id>/translation.md avec la copie traduite et le SRT
# Étape 3 : Brûler les sous-titres et prévisualiser
bun scripts/x-translate-video.ts --confirm /tmp/x-translate/<id>/translation.md
# Étape 4 : Brûler les sous-titres et publier
bun scripts/x-translate-video.ts --confirm /tmp/x-translate/<id>/translation.md --submit
- Pipeline complet et stylisation des sous-titres avec FFmpeg →
references/video-translation.md
Principes d'exécution et Sécurité
- Toujours prévisualiser d'abord : Exécuter les commandes sans
--submitpendant le développement ou la relecture manuelle. - Profil persistant : Tous les scripts partagent
~/.local/share/x-browser-profile, l'authentification n'est donc nécessaire qu'une seule fois. - Envoi natif des touches : Les ressources média utilisent une simulation de collage au niveau matériel (
copy-to-clipboard.ts+paste-from-clipboard.ts) pour éviter les blocages d'événements synthétiques CDP. - Résolution des problèmes : Pour les délais de connexion, les autorisations de presse-papiers ou les erreurs de connexion CDP →
references/troubleshooting.md.