# Compétence d'agent pour automatiser la publication sur X (Twitter)

> Automatisez la publication de textes, images, vidéos et articles longs sur X (Twitter) en utilisant un vrai navigateur Chrome. Prend en charge divers modes, notamment l'extension Codex Chrome, Computer Use et le script CDP. Commencez à partager du contenu efficacement.

- Canonical: https://nanoskill.ai/fr/skills/post-to-twitter
- Markdown: https://nanoskill.ai/fr/skills/post-to-twitter.md
- Author: JimLiu
- Published: 2026-06-01T07:19:10.429Z
- Updated: 2026-07-25T04:34:26.608Z
- Language: fr
- Source type: github
- Popularity signal: 20040

## Sources

- https://github.com/JimLiu/baoyu-skills

## Install

```shell
npx skills add https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-post-to-x
```

## About

La compétence Publier sur X (Twitter) offre une solution robuste pour automatiser la publication de contenu sur X, permettant aux utilisateurs de partager efficacement des textes, des images, des vidéos et des articles longs. Cet outil est conçu pour toute personne cherchant à rationaliser sa présence sur les réseaux sociaux, des utilisateurs individuels aux créateurs de contenu et aux spécialistes du marketing. Il s'intègre à de vraies instances de navigateur Chrome, garantissant la compatibilité avec la plateforme X tout en offrant des options de contrôle flexibles.

Cette compétence se distingue par sa prise en charge de plusieurs modes de contrôle du navigateur, notamment l'extension Codex Chrome, Chrome Computer Use et le mode CDP Script. Cette adaptabilité lui permet de fonctionner efficacement dans différentes configurations et préférences utilisateur. Une fonctionnalité clé est sa capacité à publier des articles X détaillés directement à partir de fichiers Markdown, en gérant des tâches complexes comme le téléchargement d'images de couverture et l'intégration d'images dans le contenu, ce qui est inestimable pour partager du contenu approfondi.

Les utilisateurs peuvent tirer parti de cette compétence dans divers scénarios, comme l'automatisation des mises à jour quotidiennes sur les réseaux sociaux, la publication d'articles de blog ou de rapports complets sous forme d'articles X, ou encore la citation et le commentaire rapides d'autres tweets. Elle comprend des vérifications préalables utiles pour s'assurer que l'environnement est correctement configuré et fournit des conseils clairs pour le dépannage, la rendant accessible même aux utilisateurs novices en automatisation.

## Key features

- **Publication de contenu multiple**: Publiez facilement du texte, des images et des vidéos sur X (Twitter), en gérant différents types de médias pour divers besoins de partage de contenu.
- **Publication d'articles longs**: Publiez des articles X à partir de fichiers Markdown, y compris des images de couverture et des images de contenu intégrées, idéal pour des publications détaillées.
- **Modes de contrôle du navigateur flexibles**: Prend en charge le plugin Codex Chrome, l'utilisation de l'ordinateur Chrome et le mode script CDP, s'adaptant à divers environnements d'exécution et préférences utilisateur.
- **Fonctionnalité de citation de tweet**: Citez facilement des tweets existants avec vos commentaires, facilitant l'engagement et la discussion sur la plateforme.
- **Vérifications préalables de l'environnement**: Comprend un script pour vérifier les prérequis nécessaires tels que Chrome, Bun et les autorisations d'accessibilité, fournissant des conseils en cas de problème.

## Use cases

- **Automatiser les mises à jour sur les réseaux sociaux**: Les créateurs de contenu et les marketeurs peuvent planifier et automatiser leurs publications régulières, y compris du texte, des images et des vidéos, pour maintenir une présence active sur X sans intervention manuelle.
- **Publier des articles X détaillés**: Les journalistes, blogueurs et analystes peuvent publier des articles longs directement à partir de Markdown, avec des médias enrichis, pour partager du contenu approfondi avec leur public sur X.
- **Citer et commenter efficacement**: Les utilisateurs peuvent rapidement citer des tweets et ajouter leurs commentaires, rationalisant ainsi le processus d'engagement avec les sujets tendance ou le contenu d'autres utilisateurs sur X.

## Result preview

Découvrez une publication Twitter sur un outil de productivité IA avec des images et hashtags pertinents préparés pour la publication.

![the demo of Post to X Agent Skill](https://file.nanoskill.ai/post-to-x-demo-1.jpg)

![the demo of Post to X Agent Skill](https://file.nanoskill.ai/post-to-x-demo-2.jpg)

![the demo of Post to X Agent Skill](https://file.nanoskill.ai/post-to-x-demo-3.jpg)

## Result walkthrough

### Étape 1 : Installer

Ajoutez la compétence à votre agent.

![a simple demonstration of the first step in using Post to X](https://file.nanoskill.ai/post-to-x-step-1.jpg)

### Étape 2 :Partager l'idée de publication

Fournissez vos idées de tweet, d'image, de vidéo ou d'article et demandez à la compétence de les préparer pour la publication sur X.

![a simple demonstration of the second step in using Post to X](https://file.nanoskill.ai/post-to-x-step-2.jpg)

### Étape 3 :Vérifier avant publication

Vérifiez la publication générée et confirmez avant sa publication.

![a simple demonstration of the first step in using Post to X](https://file.nanoskill.ai/post-to-x-step-3.jpg)

## Skill definition

# Publier sur X (Twitter)

Publie du texte, des images, des vidéos et des articles longs sur X via un vrai navigateur Chrome.

Dans Codex, ne confondez pas ces chemins de navigateur :
- **Plugin Chrome Codex / `@chrome` / Extension Chrome** : utilisez la compétence `chrome:Chrome` intégrée et son client de navigateur Node REPL. Ceci est requis lorsque l'utilisateur dit « Plugin Chrome Codex », « Codex 自带的 Chrome 插件 », `@chrome`, ou similaire.
- **Chrome Computer Use** : utilisez `mcp__computer_use__.*` contre l'interface utilisateur visible de Google Chrome uniquement lorsque l'utilisateur demande Computer Use ou qu'aucune préférence de plugin Chrome n'est exprimée et que Computer Use est disponible.
- **Mode script CDP** : à utiliser uniquement en tant que solution de repli lorsque le mode sélectionné est indisponible ou que l'utilisateur demande explicitement le mode CDP/script.

## Répertoire des scripts

**Important** : Tous les scripts se trouvent dans le sous-répertoire `scripts/` de cette compétence.

**Instructions d'exécution pour l'agent** :
1. Déterminez le chemin du répertoire de ce fichier SKILL.md comme `{baseDir}`
2. Chemin du script = `{baseDir}/scripts/<script-name>.ts`
3. Remplacez tous les `{baseDir}` dans ce document par le chemin réel.
4. Résoudre l'environnement d'exécution `${BUN_X}` : si `bun` est installé → `bun` ; si `npx` est disponible → `npx -y bun` ; sinon suggérez d'installer bun.

**Référence des scripts** :
| Script | Objectif |
|--------|---------|
| `scripts/x-browser.ts` | Publications normales (texte + images), repli CDP |
| `scripts/x-video.ts` | Publications vidéo (texte + vidéo), repli CDP |
| `scripts/x-quote.ts` | Tweet de citation avec commentaire, repli CDP |
| `scripts/x-article.ts` | Publication d'articles longs (Markdown), repli CDP |
| `scripts/md-to-html.ts` | Conversion Markdown → HTML |
| `scripts/copy-to-clipboard.ts` | Copier le contenu dans le presse-papiers |
| `scripts/paste-from-clipboard.ts` | Envoyer une vraie frappe de collage |
| `scripts/check-paste-permissions.ts` | Vérifier l'environnement et les autorisations |

## Sélection du mode d'exécution (obligatoire)

Choisissez exactement un mode avant d'interagir avec X :

1. Si l'utilisateur demande explicitement le plugin Chrome Codex, `@chrome`, l'extension Chrome, ou « Codex 自带的 Chrome 插件 », utilisez le **Mode Plugin Chrome Codex**. N'appelez pas Computer Use en premier.
2. Si l'utilisateur demande explicitement Chrome Computer Use, utilisez le **Mode Chrome Computer Use**. Ne revenez pas à CDP, Playwright, le Navigateur intégré à l'application ou le plugin Chrome sans en informer l'utilisateur et obtenir son accord.
3. Si l'utilisateur demande explicitement le mode CDP/script, utilisez le **Mode Script CDP**.
4. Sinon, préférez le **Mode Chrome Computer Use**. Pour les **Articles X avec images de contenu locales** en Markdown, utilisez le flux de l'éditeur X testé : insérez chaque image du corps à partir de la barre d'outils (`Insert` -> `Media` -> bouton d'icône de dialogue `Add photos or video`) à son espace réservé, puis supprimez le texte de l'espace réservé. Utilisez le Mode Script CDP uniquement lorsque le mode de contrôle du navigateur sélectionné est indisponible ou que le flux de téléchargement/sélection de l'interface utilisateur n'est pas fiable.

N'utilisez jamais le Navigateur intégré à l'application pour les flux de publication sur X.

## Mode Plugin Chrome Codex

Utilisez ce mode chaque fois que l'utilisateur demande le plugin Chrome Codex, `@chrome`, ou le chemin de l'extension Chrome. Cela utilise le profil Chrome réel de l'utilisateur et sa session X via le plugin Chrome intégré, pas Computer Use ni CDP.

**Configuration**
1. Chargez la compétence `chrome:Chrome` avant le travail sur le navigateur.
2. Utilisez `tool_search` pour `node_repl js` si l'outil Node REPL `js` n'est pas déjà visible.
3. Initialisez le client du navigateur Chrome exactement comme spécifié par la compétence Chrome, puis exécutez un appel léger tel que `browser.user.openTabs()` pour vérifier la connexion de l'extension.
4. Si le premier appel léger échoue, attendez 2 secondes et réessayez une fois. S'il échoue encore, suivez les étapes de vérification et de récupération de l'extension de la compétence Chrome. Si les vérifications réussissent mais que la communication échoue toujours, demandez à l'utilisateur avant d'ouvrir une nouvelle fenêtre Chrome. Ne passez pas à Computer Use ou CDP silencieusement.

**Règles générales**
- Utilisez les API `browser.tabs.*`, `tab.playwright.*`, `tab.cua.*` du plugin Chrome et le sélecteur de fichiers pour les actions sur l'interface utilisateur de X.
- Les commandes shell sont autorisées pour le prétraitement du Markdown et la préparation du presse-papiers en HTML enrichi. Pour les images du corps des Articles X, ne vous fiez pas au collage d'image depuis le presse-papiers ; utilisez le flux de téléchargement `Insert` -> `Media` de l'éditeur.
- Si un téléchargement de fichier échoue avec `Not allowed`, dites à l'utilisateur : `Pour activer le téléchargement de fichiers, accédez à chrome://extensions dans Chrome, cliquez sur Détails sous l'extension Codex, et activez « Autoriser l'accès aux URL de fichiers ». Voir https://developers.openai.com/codex/app/chrome-extension#upload-files pour plus de détails.`
- Si le plugin Chrome signale `native pipe is closed`, réessayez l'appel léger au navigateur une fois après 2 secondes, puis exécutez les vérifications de santé de la compétence Chrome. Si Chrome est en cours d'exécution, que l'extension est activée et que le manifeste de l'hôte natif est correct, demandez la permission d'ouvrir une nouvelle fenêtre Chrome et réessayez. Ne continuez pas à envoyer des actions de navigateur via le tuyau cassé.
- Ne cliquez jamais sur `Publier`, `Poster` ou toute action de soumission visible de l'extérieur sans une confirmation finale explicite de l'utilisateur dans la conversation en cours.

**Articles X**
1. Convertissez le Markdown et conservez la carte des images :
   ```bash
   ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
   ```
2. Lisez la sortie JSON pour `title`, `coverImage` et `contentImages` (`placeholder` → `localPath`).
3. Ouvrez ou créez le brouillon de l'article à `https://x.com/compose/articles`.
4. Téléchargez la couverture avec le flux de sélection de fichiers du plugin Chrome. Si le téléchargement est bloqué par les permissions de l'extension, arrêtez-vous et signalez la correction de permission exacte ci-dessus.
5. Remplissez le titre, puis copiez le HTML enrichi :
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
   ```
6. Collez dans le corps de l'article avec une vraie frappe de collage via le plugin Chrome. Sur macOS, utilisez `Meta+V`.
7. Vérifiez que le texte de l'éditeur contient le corps de l'article et les espaces réservés `XIMGPH_`. Ne vous fiez pas à `tab.clipboard.readText()` comme preuve du presse-papiers système après des écritures shell dans le presse-papiers ; sur macOS, vérifiez avec `pbpaste` si nécessaire.
8. Pour chaque élément `contentImages` dans l'ordre des espaces réservés :
   - Localisez le texte visible de l'espace réservé (`XIMGPH_N`) et cliquez dessus pour y placer le curseur.
   - Ouvrez le menu de la barre d'outils `Insert` -> `Media`.
   - Dans la fenêtre modale, cliquez sur le bouton d'icône avec `aria-label="Add photos or video"` ; ne cliquez pas sur le texte/zone de dépôt ou sur le champ de fichier masqué.
   - Utilisez le sélecteur de fichiers pour télécharger le `localPath` de cette image.
   - Après l'apparition de l'image, si `XIMGPH_N` reste au-dessus, sélectionnez exactement cet espace réservé et appuyez d'abord sur `Suppr`. Utilisez `Retour arrière` uniquement si `Suppr` échoue et que le texte sélectionné est confirmé comme étant exactement l'espace réservé.
   - Vérifiez que le nombre d'espaces réservés pour ce `XIMGPH_N` est `0`.
9. Ouvrez l'aperçu et vérifiez le titre, la couverture, le corps, les liens et les images.
10. Demandez une confirmation explicite avant de cliquer sur `Publier`.

## Préférences (EXTEND.md)

Vérifiez EXTEND.md par ordre de priorité — le premier trouvé l'emporte :

| Priorité | Chemin | Portée |
|----------|------|-------|
| 1 | `.baoyu-skills/baoyu-post-to-x/EXTEND.md` | Projet |
| 2 | `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-post-to-x/EXTEND.md` | XDG |
| 3 | `$HOME/.baoyu-skills/baoyu-post-to-x/EXTEND.md` | Répertoire utilisateur |

Si aucun n’est trouvé, utilisez les valeurs par défaut.

**EXTEND.md prend en charge** : Profil Chrome par défaut

## Prérequis

- Google Chrome ou Chromium
- environnement d'exécution `bun`
- Première exécution : connectez-vous à X manuellement (session sauvegardée)

## Vérification préliminaire (facultative)

Avant la première utilisation, suggérez d'exécuter la vérification de l'environnement. L'utilisateur peut l'ignorer s'il le préfère.

```bash
${BUN_X} {baseDir}/scripts/check-paste-permissions.ts
```

Vérifications : Chrome, isolation du profil, Bun, Accessibilité, presse-papiers, frappe de collage, conflits Chrome.

**Si une vérification échoue**, fournissez des conseils de correction par élément :

| Vérification | Correction |
|-------|-----|
| Chrome | Installer Chrome ou définir la variable d'environnement `X_BROWSER_CHROME_PATH` |
| Répertoire de profil | Profil partagé à `baoyu-skills/chrome-profile` (voir la section Profil Chrome de CLAUDE.md) |
| Environnement d'exécution Bun | `brew install oven-sh/bun/bun` (macOS) ou `npm install -g bun` |
| Accessibilité (macOS) | Réglages Système → Confidentialité et sécurité → Accessibilité → activez l'application du terminal |
| Copie dans le presse-papiers | Assurez-vous que Swift/AppKit est disponible (outils CLI Xcode macOS : `xcode-select --install`) |
| Frappe de collage (macOS) | Identique à la correction d'Accessibilité ci-dessus |
| Frappe de collage (Linux) | Installer `xdotool` (X11) ou `ydotool` (Wayland) |

## Références

- **Publications normales** : Voir `references/regular-posts.md` pour le flux de travail manuel, le dépannage et les détails techniques.
- **Articles X** : Voir `references/articles.md` pour le guide de publication d'articles longs.

---

## Mode Chrome Computer Use

Utilisez ce mode lorsque l'utilisateur demande explicitement Chrome Computer Use, ou lorsqu'aucune préférence de plugin Chrome n'est exprimée et que Codex peut contrôler `Google Chrome` avec Computer Use. Cela utilise la fenêtre Chrome existante de l'utilisateur, les cookies, la session X, les extensions, etc.

**Règles générales** :
- Commencez chaque tour d'assistant qui contrôle Chrome en appelant `get_app_state` pour `Google Chrome`.
- Préférez les actions par index d'élément lorsqu'elles sont disponibles ; utilisez les coordonnées uniquement pour la sélection de texte dans l'éditeur ou la sélection par glissement.
- N'utilisez pas le Navigateur intégré à l'application, le plugin Chrome, Playwright ou CDP pour les actions sur l'interface utilisateur de X dans ce mode, sauf si l'utilisateur approuve un changement de mode.
- Ne cliquez jamais sur `Publier`, `Poster` ou toute action de soumission visible de l'extérieur sans une confirmation finale explicite de l'utilisateur dans la conversation en cours.

**Publications normales** :
1. Ouvrez ou accédez à Chrome sur `https://x.com/compose/post`.
2. Tapez le texte de la publication dans l'éditeur en utilisant Computer Use.
3. Pour chaque image, exécutez :
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts image /absolute/path/to/image.png
   ```
4. Collez avec Computer Use (`super+v` sur macOS, `control+v` sur Windows/Linux), puis attendez que X ait fini de télécharger le média.
5. Demandez une confirmation avant de cliquer sur `Poster`.

**Publications vidéo** :
1. Ouvrez ou accédez à Chrome sur `https://x.com/compose/post`.
2. Tapez le texte de la publication dans l'éditeur.
3. Utilisez l'interface utilisateur visible de téléchargement de média/sélecteur de fichier pour joindre la vidéo.
4. Attendez la fin du téléchargement et du traitement.
5. Demandez une confirmation avant de cliquer sur `Poster`.

**Tweets de citation** :
1. Ouvrez l'URL du tweet dans Chrome.
2. Utilisez l'interface utilisateur visible de citation/repost pour choisir Citer.
3. Tapez le commentaire.
4. Demandez une confirmation avant de cliquer sur `Poster`.

**Articles X** :
1. Convertissez le Markdown et conservez la carte des images :
   ```bash
   ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
   ```
2. Lisez la sortie JSON pour `title`, `coverImage` et `contentImages` (`placeholder` → `localPath`).
3. Dans Chrome, ouvrez `https://x.com/compose/articles`, créez ou ouvrez le brouillon, téléchargez la couverture si présente et remplissez le titre.
4. Copiez le HTML enrichi dans le presse-papiers :
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
   ```
5. Collez dans le corps de l'article avec Computer Use.
6. Pour chaque entrée `contentImages` dans l'ordre des espaces réservés :
   - Localisez le texte exact visible de l'espace réservé, tel que `XIMGPH_3`, et cliquez dessus pour définir le point d'insertion.
   - Ouvrez le menu déroulant `Insert` de la barre d'outils, choisissez `Media`, puis cliquez sur le bouton d'icône de la fenêtre modale étiqueté `Add photos or video`.
   - Utilisez le sélecteur de fichier natif pour choisir le `localPath` de l'image.
   - Attendez que le bloc d'image apparaisse et que toute activité de téléchargement soit terminée.
   - Si l'espace réservé reste au-dessus de l'image insérée, resélectionnez exactement ce texte d'espace réservé et appuyez d'abord sur `Suppr`. Utilisez `Retour arrière` uniquement si `Suppr` échoue et que le texte sélectionné est confirmé comme étant exactement l'espace réservé.
7. Vérifiez qu'il ne reste aucun espace réservé `XIMGPH_` et que les images attendues apparaissent.
8. Ouvrez l'aperçu et vérifiez le titre, la couverture, le corps, les liens et les images.
9. Demandez une confirmation explicite avant de cliquer sur `Publier`.

Si la sélection de Computer Use, le téléchargement via la barre d'outils ou le contrôle du sélecteur de fichiers devient peu fiable, arrêtez-vous et signalez le blocage au lieu de passer silencieusement au plugin Chrome ou à CDP.

---

## Mode Script CDP (Solution de repli)

Utilisez les sections de script ci-dessous uniquement lorsque le mode de contrôle de navigateur sélectionné est indisponible, non fiable ou explicitement non demandé. Ces scripts lancent ou réutilisent une instance Chrome réelle via CDP et gardent le navigateur ouvert pour révision.

N'utilisez pas le Mode Script CDP lorsque l'utilisateur exige explicitement le plugin Chrome Codex ou Chrome Computer Use, à moins que l'utilisateur n'approuve la solution de repli après que vous ayez expliqué le blocage.

---

## Sélection du type de publication

Sauf si l'utilisateur spécifie explicitement le type de publication :
- **Texte brut** + dans la limite de 10 000 caractères → **Publication normale** (les membres Premium prennent en charge jusqu'à 10 000 caractères, non-Premium : 280)
- **Fichier Markdown** (.md) → **Article X**

## Publications normales

```bash
${BUN_X} {baseDir}/scripts/x-browser.ts "Hello!" --image ./photo.png
```

**Paramètres** :
| Paramètre | Description |
|-----------|-------------|
| `<texte>` | Contenu de la publication (positionnel) |
| `--image <chemin>` | Fichier image (répétable, max 4) |
| `--profile <répertoire>` | Profil Chrome personnalisé |

**Remarque** : Le script ouvre le navigateur avec le contenu rempli. L'utilisateur examine et publie manuellement.

**Remarque sur le mode Codex** : Si l'utilisateur a explicitement demandé le plugin Chrome Codex, utilisez le **Mode Plugin Chrome Codex**. Sinon, si Chrome Computer Use est activé, utilisez le **Mode Chrome Computer Use** au lieu d'exécuter `x-browser.ts`.

---

## Publications vidéo

Texte + fichier vidéo.

```bash
${BUN_X} {baseDir}/scripts/x-video.ts "Check this out!" --video ./clip.mp4
```

**Paramètres** :
| Paramètre | Description |
|-----------|-------------|
| `<texte>` | Contenu de la publication (positionnel) |
| `--video <chemin>` | Fichier vidéo (MP4, MOV, WebM) |
| `--profile <répertoire>` | Profil Chrome personnalisé |

**Remarque** : Le script ouvre le navigateur avec le contenu rempli. L'utilisateur examine et publie manuellement.

**Remarque sur le mode Codex** : Si l'utilisateur a explicitement demandé le plugin Chrome Codex, utilisez le **Mode Plugin Chrome Codex**. Sinon, si Chrome Computer Use est activé, utilisez le **Mode Chrome Computer Use** au lieu d'exécuter `x-video.ts`.

**Limites** : Normal 140 s max, Premium 60 min. Traitement : 30-60 s.

---

## Tweets de citation

Citer un tweet existant avec un commentaire.

```bash
${BUN_X} {baseDir}/scripts/x-quote.ts https://x.com/user/status/123 "Great insight!"
```

**Paramètres** :
| Paramètre | Description |
|-----------|-------------|
| `<url-du-tweet>` | URL à citer (positionnel) |
| `<commentaire>` | Texte du commentaire (positionnel, facultatif) |
| `--profile <répertoire>` | Profil Chrome personnalisé |

**Remarque** : Le script ouvre le navigateur avec le contenu rempli. L'utilisateur examine et publie manuellement.

**Remarque sur le mode Codex** : Si l'utilisateur a explicitement demandé le plugin Chrome Codex, utilisez le **Mode Plugin Chrome Codex**. Sinon, si Chrome Computer Use est activé, utilisez le **Mode Chrome Computer Use** au lieu d'exécuter `x-quote.ts`.

---

## Articles X

Articles Markdown longs (nécessite X Premium).

```bash
${BUN_X} {baseDir}/scripts/x-article.ts article.md
${BUN_X} {baseDir}/scripts/x-article.ts article.md --cover ./cover.jpg
```

**Paramètres** :
| Paramètre | Description |
|-----------|-------------|
| `<markdown>` | Fichier Markdown (positionnel) |
| `--cover <chemin>` | Image de couverture |
| `--title <texte>` | Remplacer le titre |

**Frontmatter** : `title`, `cover_image` pris en charge dans l'en-tête YAML.

**Remarque sur le mode Codex** : Si l'utilisateur a explicitement demandé le plugin Chrome Codex, suivez le **Mode Plugin Chrome Codex** ci-dessus. Si l'utilisateur a explicitement demandé Chrome Computer Use, suivez le **Mode Chrome Computer Use**. Sinon, préférez Chrome Computer Use ; pour les articles Markdown avec des images de contenu locales, utilisez le flux de téléchargement d'image via la barre d'outils `Insert` -> `Media` avant de revenir à `x-article.ts` en **Mode Script CDP**.

**Remarque sur la solution de repli CDP** : Le script ouvre le navigateur avec l'article rempli. L'utilisateur examine et publie manuellement sauf si `--submit` est utilisé.

**Sécurité de publication** : N'utilisez pas `--submit` et ne cliquez pas sur `Publier` sauf si l'utilisateur confirme explicitement l'action finale de publication publique.

**Vérification après composition** : Le script vérifie automatiquement après l'insertion de toutes les images :
- Les espaces réservés `XIMGPH_` restants dans le contenu de l'éditeur
- Nombre d'images attendu par rapport au nombre réel

Si la vérification échoue (avertissements dans la sortie), alertez l'utilisateur avec les problèmes spécifiques avant qu'il ne publie.

---

## Dépannage

### Port de débogage Chrome non prêt

Solution de repli CDP uniquement : si un script échoue avec `Chrome debug port not ready` ou `Unable to connect`, tuez d'abord les instances Chrome CDP existantes, puis réessayez :

```bash
pkill -f "Chrome.*remote-debugging-port" 2>/dev/null; pkill -f "Chromium.*remote-debugging-port" 2>/dev/null; sleep 2
```

**Important** : Cela doit être fait automatiquement — lors de la rencontre de cette erreur, tuez les instances Chrome CDP et réessayez la commande sans demander à l'utilisateur.

## Remarques

- Première exécution : connexion manuelle requise (la session persiste)
- En Mode Plugin Chrome Codex et Mode Chrome Computer Use, utilisez la session Chrome existante de l'utilisateur et ne lancez pas de profil CDP séparé.
- Les scripts CDP ne remplissent que le contenu dans le navigateur par défaut ; l'utilisateur doit examiner et publier manuellement sauf si `--submit` est utilisé explicitement.
- Multiplateforme : macOS, Linux, Windows

## Prise en charge des extensions

Configurations personnalisées via EXTEND.md. Voir la section **Préférences** pour les chemins et les options prises en charge.

## FAQ

### Quels types de contenu puis-je publier sur X en utilisant cette compétence ?

Vous pouvez publier des mises à jour textuelles classiques, des images, des vidéos et des articles longs X (anciennement Articles Twitter) créés à partir de fichiers Markdown. Il prend en charge divers types de médias pour un partage de contenu complet.

### Cette compétence prend-elle en charge les articles X, et quelles sont les exigences ?

Oui, elle prend en charge les articles X à partir de Markdown. Vous pouvez inclure des images de couverture et des images de contenu. La publication d'articles X nécessite généralement un abonnement X Premium.

### Quels sont les différents modes de contrôle du navigateur disponibles ?

La compétence propose trois modes principaux : le mode plugin Codex Chrome, le mode Utilisation de l'ordinateur Chrome et le mode script CDP. Le choix dépend de votre environnement et de vos besoins spécifiques, le mode Utilisation de l'ordinateur étant le mode par défaut recommandé.

### Comment installer la compétence 'Publier sur X' ?

Vous pouvez installer la compétence en utilisant la commande : \`npx skills add https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-post-to-x\`. Assurez-vous d'avoir \`bun\` ou \`npx\` installé.

### Une vérification manuelle est-elle nécessaire avant de publier des posts sur X ?

Par défaut, la compétence remplit le contenu dans le navigateur, et vous devez le vérifier et le publier manuellement. L'option \`--submit\` pour les scripts CDP ne doit être utilisée qu'avec une confirmation explicite de l'utilisateur pour la publication publique finale.

### Que dois-je faire si je rencontre une erreur 'port de débogage Chrome non prêt' ?

Si cette erreur se produit en mode de secours CDP, vous devez tuer les instances Chrome CDP existantes et réessayer la commande. La compétence est conçue pour tenter cela automatiquement.
