NanoSkill
Invia la tua skill

Automatizza i Post su X (Twitter) - Competenza dell'Agente

diJimLiu20Kstelle GitHubGitHub

Automatizza la pubblicazione di testo, immagini, video e articoli lunghi su X (Twitter) utilizzando un browser Chrome reale. Supporta varie modalità, tra cui il plugin Codex per Chrome, Computer Use e lo script CDP. Inizia a condividere contenuti in modo efficiente.

twitterScansione di sicurezza superata
Anteprima risultato

Demo completa

Guarda un post su Twitter che parla di uno strumento di produttività basato sull'IA, con immagini e hashtag pertinenti, pronto per la pubblicazione.

Per iniziare

Esegui il primo task

  1. a simple demonstration of the first step in using Post to X
    01

    Passaggio 1:Installa

    Aggiungi l'abilità al tuo agente.

  2. a simple demonstration of the second step in using Post to X
    02

    Passaggio 2:Condividi l'idea del post

    Fornisci le tue idee per tweet, immagini, video o articoli e chiedi all'abilità di prepararle per la pubblicazione su X.

  3. a simple demonstration of the first step in using Post to X
    03

    Passaggio 3:Rivedi prima di pubblicare

    Rivedi il post generato e conferma prima che venga pubblicato.

Comando di installazione

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

Informazioni

L'abilità di postare su X (Twitter) fornisce una soluzione robusta per automatizzare la pubblicazione di contenuti su X, consentendo agli utenti di condividere in modo efficiente testo, immagini, video e articoli lunghi. Questo strumento è progettato per chiunque voglia ottimizzare la propria presenza sui social media, dai singoli utenti ai creatori di contenuti e ai marketer. Si integra con istanze reali del browser Chrome, garantendo la compatibilità con la piattaforma X e offrendo opzioni di controllo flessibili.

Questa abilità si distingue per il supporto di molteplici modalità di controllo del browser, tra cui il plugin Codex per Chrome, Chrome Computer Use e la modalità script CDP. Questa adattabilità le consente di funzionare efficacemente in diverse configurazioni e preferenze degli utenti. Una caratteristica fondamentale è la capacità di pubblicare articoli dettagliati per X direttamente da file Markdown, gestendo compiti complessi come il caricamento delle immagini di copertina e l'incorporamento di immagini nel contenuto, il che è prezioso per la condivisione di contenuti approfonditi.

Gli utenti possono sfruttare questa abilità per una varietà di scenari, come automatizzare gli aggiornamenti quotidiani sui social media, pubblicare post di blog o report completi come articoli su X, oppure citare e commentare rapidamente altri tweet. Include utili controlli preliminari per garantire che l'ambiente sia configurato correttamente e fornisce indicazioni chiare per la risoluzione dei problemi, rendendola accessibile anche agli utenti nuovi all'automazione.

Funzioni chiave

Cosa la rende potente

  • Pubblicazione Multi-Contenuto

    Pubblica testo, immagini e video su X (Twitter) senza soluzione di continuità, gestendo diversi tipi di media per esigenze di condivisione di contenuti vari.

  • Pubblicazione di Articoli Lunghi

    Pubblica X Articles da file Markdown, incluse immagini di copertina e immagini di contenuto incorporate, ideale per post dettagliati.

  • Modalità di Controllo del Browser Flessibili

    Supporta Codex Chrome plugin, Chrome Computer Use e CDP Script Mode, adattandosi a vari ambienti di esecuzione e preferenze dell'utente.

  • Funzionalità Quote Tweet

    Cita facilmente tweet esistenti con i tuoi commenti, facilitando il coinvolgimento e la discussione sulla piattaforma.

  • Controlli Preliminari dell'Ambiente

    Include uno script per verificare i prerequisiti necessari come Chrome, Bun e le autorizzazioni di accessibilità, fornendo indicazioni per eventuali problemi.

Casi d’uso

Quando usarla

  • Automatizza gli Aggiornamenti sui Social Media

    Creatori di contenuti e marketer possono pianificare e automatizzare i loro post regolari, inclusi testo, immagini e video, per mantenere una presenza attiva su X senza interventi manuali.

  • Pubblica X Articles Dettagliati

    Giornalisti, blogger e analisti possono pubblicare articoli lunghi direttamente da Markdown, completi di contenuti multimediali, per condividere contenuti approfonditi con il loro pubblico su X.

  • Cita e Commenta in Modo Efficiente

    Gli utenti possono citare rapidamente tweet e aggiungere i propri commenti, semplificando il processo di interazione con argomenti di tendenza o contenuti di altri utenti su X.

SKILL.md

Pubblica su X (Twitter)

Pubblica testi, immagini, video e articoli di lunga forma su X tramite un vero browser Chrome.

In Codex, non confondere questi percorsi del browser:

  • Plugin Chrome di Codex / @chrome / Estensione Chrome: usa la skill chrome:Chrome in bundle e il suo client browser Node REPL. Questo è richiesto ogni volta che l'utente dice "Plugin Chrome di Codex", "Codex 自带的 Chrome 插件", @chrome o simili.
  • Chrome Computer Use: usa mcp__computer_use__.* sull'interfaccia visibile di Google Chrome solo quando l'utente richiede Computer Use o quando non viene specificata una preferenza per il plugin Chrome e Computer Use è disponibile.
  • Modalità script CDP: usa solo come fallback quando la modalità selezionata non è disponibile o l'utente richiede esplicitamente la modalità CDP/script.

Directory Script

Importante: Tutti gli script si trovano nella sottodirectory scripts/ di questa skill.

Istruzioni per l'esecuzione dell'agente:

  1. Determina il percorso della directory di questo file SKILL.md come {baseDir}
  2. Percorso dello script = {baseDir}/scripts/<script-name>.ts
  3. Sostituisci tutti i {baseDir} in questo documento con il percorso effettivo
  4. Risolvi il runtime ${BUN_X}: se bun è installato → bun; se npx è disponibile → npx -y bun; altrimenti suggerisci di installare bun

Riferimento script:

ScriptScopo
scripts/x-browser.tsPost regolari (testo + immagini), fallback CDP
scripts/x-video.tsPost video (testo + video), fallback CDP
scripts/x-quote.tsCita tweet con commento, fallback CDP
scripts/x-article.tsPubblicazione di articoli di lunga forma (Markdown), fallback CDP
scripts/md-to-html.tsConversione Markdown → HTML
scripts/copy-to-clipboard.tsCopia contenuto negli appunti
scripts/paste-from-clipboard.tsInvia un vero tasto incolla
scripts/check-paste-permissions.tsVerifica ambiente e permessi

Selezione della modalità di esecuzione (Obbligatorio)

Scegli esattamente una modalità prima di interagire con X:

  1. Se l'utente richiede esplicitamente il plugin Chrome di Codex, @chrome, l'estensione Chrome o "Codex 自带的 Chrome 插件", usa la Modalità Plugin Chrome di Codex. Non chiamare prima Computer Use.
  2. Se l'utente richiede esplicitamente Chrome Computer Use, usa la Modalità Chrome Computer Use. Non passare a CDP, Playwright, al Browser in-app o al plugin Chrome senza informare l'utente e ottenere l'approvazione.
  3. Se l'utente richiede esplicitamente la modalità CDP/script, usa la Modalità Script CDP.
  4. Altrimenti, preferisci la Modalità Chrome Computer Use. Per gli Articoli X in Markdown con immagini di contenuto locali, usa il flusso collaudato dell'editor di X: inserisci ogni immagine del corpo dalla barra degli strumenti (Inserisci -> Media -> pulsante icona della finestra di dialogo Aggiungi foto o video) al suo segnaposto, quindi elimina il testo del segnaposto. Usa la Modalità Script CDP solo quando la modalità di controllo del browser selezionata non è disponibile o il flusso di caricamento/selezione dell'interfaccia utente non è affidabile.

Non usare mai il Browser in-app per i flussi di lavoro di pubblicazione su X.

Modalità Plugin Chrome di Codex

Usa questa modalità ogni volta che l'utente richiede il plugin Chrome di Codex, @chrome o il percorso dell'estensione Chrome. Questo utilizza il profilo Chrome reale dell'utente e l'accesso a X tramite il plugin Chrome in bundle, non Computer Use e non CDP.

Configurazione

  1. Carica la skill chrome:Chrome prima di lavorare con il browser.
  2. Usa tool_search per node_repl js se lo strumento Node REPL js non è già visibile.
  3. Inizializza il client del browser Chrome esattamente come specificato dalla skill Chrome, quindi esegui una chiamata leggera come browser.user.openTabs() per verificare la connessione dell'estensione.
  4. Se la prima chiamata leggera fallisce, attendi 2 secondi e riprova una volta. Se fallisce ancora, segui i controlli dell'estensione e i passaggi di ripristino della skill Chrome. Se i controlli passano ma la comunicazione fallisce ancora, chiedi all'utente prima di aprire una nuova finestra di Chrome. Non passare silenziosamente a Computer Use o CDP.

Regole generali

  • Usa le API browser.tabs.*, tab.playwright.*, tab.cua.* e di selezione file del plugin Chrome per le azioni sull'interfaccia di X.
  • I comandi shell sono consentiti per il preprocessing Markdown e la preparazione degli appunti HTML ricco. Per le immagini del corpo di un Articolo X, non fare affidamento sull'incolla immagini dagli appunti; usa il flusso di caricamento Inserisci -> Media dell'editor.
  • Se un caricamento file fallisce con Non consentito, informa l'utente: Per abilitare il caricamento file, vai a chrome://extensions in Chrome, clicca su Dettagli sotto l'estensione Codex e abilita "Consenti l'accesso agli URL dei file." Vedi https://developers.openai.com/codex/app/chrome-extension#upload-files per i dettagli.
  • Se il plugin Chrome segnala native pipe is closed, riprova la chiamata leggera al browser una volta dopo 2 secondi, quindi esegui i controlli di salute della skill Chrome. Se Chrome è in esecuzione, l'estensione è abilitata e il manifest dell'host nativo è corretto, chiedi il permesso di aprire una nuova finestra di Chrome e riprova. Non continuare a inviare azioni del browser attraverso il pipe interrotto.
  • Non cliccare mai su Pubblica, Post o qualsiasi azione di invio visibile esternamente senza una conferma finale esplicita dell'utente nella conversazione corrente.

Articoli X

  1. Converti il Markdown e mantieni la mappa delle immagini:
    ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
    
  2. Leggi l'output JSON per title, coverImage e contentImages (placeholderlocalPath).
  3. Apri o crea la bozza dell'articolo su https://x.com/compose/articles.
  4. Carica la copertina con il flusso di selezione file del plugin Chrome. Se il caricamento è bloccato dai permessi dell'estensione, fermati e segnala l'esatta correzione dei permessi sopra.
  5. Compila il titolo, quindi copia l'HTML ricco:
    ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
    
  6. Incolla nel corpo dell'articolo con un vero tasto incolla tramite il plugin Chrome. Su macOS usa Meta+V.
  7. Verifica che il testo dell'editor contenga il corpo dell'articolo e i segnaposto XIMGPH_. Non fare affidamento su tab.clipboard.readText() come prova degli appunti di sistema dopo le scritture degli appunti da shell; su macOS verifica con pbpaste se necessario.
  8. Per ogni elemento contentImages in ordine di segnaposto:
    • Individua il testo del segnaposto visibile (XIMGPH_N) e cliccalo per posizionare il cursore lì.
    • Apri il menu della barra degli strumenti Inserisci -> Media.
    • Nella finestra modale, clicca il pulsante icona con aria-label="Aggiungi foto o video"; non cliccare sul testo/dropzone o sull'input file nascosto.
    • Usa il selettore file per caricare il localPath di quell'immagine.
    • Dopo che l'immagine appare, se XIMGPH_N rimane sopra di essa, seleziona esattamente quel segnaposto e premi prima Elimina. Usa Backspace solo se Elimina fallisce e il testo selezionato è confermato essere esattamente il segnaposto.
    • Verifica che il conteggio del segnaposto per quel XIMGPH_N sia 0.
  9. Apri Anteprima e verifica titolo, copertina, corpo, link e immagini.
  10. Chiedi conferma esplicita prima di cliccare su Pubblica.

Preferenze (EXTEND.md)

Controlla EXTEND.md in ordine di priorità — vince il primo trovato:

PrioritàPercorsoAmbito
1.baoyu-skills/baoyu-post-to-x/EXTEND.mdProgetto
2${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-post-to-x/EXTEND.mdXDG
3$HOME/.baoyu-skills/baoyu-post-to-x/EXTEND.mdHome utente

Se non trovato, usa i valori predefiniti.

EXTEND.md supporta: Profilo Chrome predefinito

Prerequisiti

  • Google Chrome o Chromium
  • runtime bun
  • Prima esecuzione: accedi a X manualmente (sessione salvata)

Controllo pre-volo (Opzionale)

Prima del primo utilizzo, suggerisci di eseguire il controllo dell'ambiente. L'utente può saltare se preferisce.

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

Controlli: Chrome, isolamento del profilo, Bun, Accessibilità, appunti, tasto incolla, conflitti di Chrome.

Se qualche controllo fallisce, fornisci indicazioni per la correzione per ogni voce:

ControlloCorrezione
ChromeInstalla Chrome o imposta la variabile d'ambiente X_BROWSER_CHROME_PATH
Dir profiloProfilo condiviso in baoyu-skills/chrome-profile (vedi sezione Chrome Profile in CLAUDE.md)
runtime Bunbrew install oven-sh/bun/bun (macOS) o npm install -g bun
Accessibilità (macOS)Impostazioni di Sistema → Privacy e Sicurezza → Accessibilità → abilita l'app terminale
Copia appuntiAssicurati che Swift/AppKit sia disponibile (strumenti CLI Xcode macOS: xcode-select --install)
Tasto incolla (macOS)Stessa correzione dell'Accessibilità sopra
Tasto incolla (Linux)Installa xdotool (X11) o ydotool (Wayland)

Riferimenti

  • Post regolari: Vedi references/regular-posts.md per flusso di lavoro manuale, risoluzione problemi e dettagli tecnici
  • Articoli X: Vedi references/articles.md per guida alla pubblicazione di articoli di lunga forma

Modalità Chrome Computer Use

Usa questa modalità quando l'utente richiede esplicitamente Chrome Computer Use, o quando non viene specificata una preferenza per il plugin Chrome e Codex può controllare Google Chrome con Computer Use. Questo utilizza la finestra di Chrome esistente dell'utente, i cookie, l'accesso, le estensioni e la sessione X.

Regole generali:

  • Inizia ogni turno dell'assistente che controlla Chrome chiamando get_app_state per Google Chrome.
  • Preferisci le azioni con indice di elemento quando disponibili; usa le coordinate solo per la selezione del testo nell'editor o la selezione tramite trascinamento.
  • Non usare il Browser in-app, il plugin Chrome, Playwright o CDP per le azioni sull'interfaccia di X in questa modalità a meno che l'utente non approvi un cambio di modalità.
  • Non cliccare mai su Pubblica, Post o qualsiasi azione di invio visibile esternamente senza una conferma finale esplicita dell'utente nella conversazione corrente.

Post regolari:

  1. Apri o naviga Chrome su https://x.com/compose/post.
  2. Scrivi il testo del post nel compositore usando Computer Use.
  3. Per ogni immagine, esegui:
    ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts image /absolute/path/to/image.png
    
  4. Incolla con Computer Use (super+v su macOS, control+v su Windows/Linux), quindi attendi che X finisca di caricare i media.
  5. Chiedi conferma prima di cliccare su Post.

Post video:

  1. Apri o naviga Chrome su https://x.com/compose/post.
  2. Scrivi il testo del post nel compositore.
  3. Usa l'interfaccia visibile di caricamento media/selezione file per allegare il video.
  4. Attendi il completamento del caricamento e dell'elaborazione.
  5. Chiedi conferma prima di cliccare su Post.

Cita tweet:

  1. Apri l'URL del tweet in Chrome.
  2. Usa l'interfaccia visibile di cita/ripubblica per scegliere Cita.
  3. Scrivi il commento.
  4. Chiedi conferma prima di cliccare su Post.

Articoli X:

  1. Converti il Markdown e mantieni la mappa delle immagini:
    ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
    
  2. Leggi l'output JSON per title, coverImage e contentImages (placeholderlocalPath).
  3. In Chrome, apri https://x.com/compose/articles, crea o apri la bozza, carica la copertina se presente e compila il titolo.
  4. Copia l'HTML ricco negli appunti:
    ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
    
  5. Incolla nel corpo dell'articolo con Computer Use.
  6. Per ogni voce contentImages in ordine di segnaposto:
    • Individua l'esatto testo del segnaposto visibile come XIMGPH_3 e cliccalo per impostare il punto di inserimento.
    • Apri il menu a discesa Inserisci della barra degli strumenti, scegli Media, quindi clicca il pulsante icona della finestra modale etichettato Aggiungi foto o video.
    • Usa il selettore file nativo per scegliere il localPath dell'immagine.
    • Attendi che appaia il blocco immagine e che qualsiasi attività di caricamento sia terminata.
    • Se il segnaposto rimane sopra l'immagine inserita, riseleziona esattamente quel testo segnaposto e premi prima Elimina. Usa Backspace solo se Elimina fallisce e il testo selezionato è confermato essere esattamente il segnaposto.
  7. Verifica che non rimangano segnaposto XIMGPH_ e che appaiano le immagini previste.
  8. Apri Anteprima e verifica titolo, copertina, corpo, link e immagini.
  9. Chiedi conferma esplicita prima di cliccare su Pubblica.

Se la selezione, il caricamento dalla barra degli strumenti o il controllo del selettore file di Computer Use diventano inaffidabili, fermati e segnala il blocco invece di passare silenziosamente al plugin Chrome o CDP.


Modalità Script CDP (Fallback)

Usa le sezioni di script qui sotto solo quando la modalità di controllo del browser selezionata non è disponibile, non è affidabile o non è esplicitamente richiesta. Questi script avviano o riutilizzano un'istanza reale di Chrome tramite CDP e mantengono il browser aperto per la revisione.

Non usare la Modalità Script CDP quando l'utente richiede esplicitamente il plugin Chrome di Codex o Chrome Computer Use, a meno che l'utente non approvi il fallback dopo che hai spiegato il blocco.


Selezione del tipo di post

A meno che l'utente non specifichi esplicitamente il tipo di post:

  • Testo semplice + entro 10.000 caratteri → Post regolare (i membri Premium supportano fino a 10.000 caratteri, non Premium: 280)
  • File Markdown (.md) → Articolo X

Post regolari

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

Parametri:

ParametroDescrizione
<text>Contenuto del post (posizionale)
--image <path>File immagine (ripetibile, max 4)
--profile <dir>Profilo Chrome personalizzato

Nota: Lo script apre il browser con il contenuto compilato. L'utente rivede e pubblica manualmente.

Nota sulla modalità Codex: Se l'utente ha richiesto esplicitamente il plugin Chrome di Codex, usa la Modalità Plugin Chrome di Codex. Altrimenti, se Chrome Computer Use è abilitato, usa la Modalità Chrome Computer Use invece di eseguire x-browser.ts.


Post video

Testo + file video.

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

Parametri:

ParametroDescrizione
<text>Contenuto del post (posizionale)
--video <path>File video (MP4, MOV, WebM)
--profile <dir>Profilo Chrome personalizzato

Nota: Lo script apre il browser con il contenuto compilato. L'utente rivede e pubblica manualmente.

Nota sulla modalità Codex: Se l'utente ha richiesto esplicitamente il plugin Chrome di Codex, usa la Modalità Plugin Chrome di Codex. Altrimenti, se Chrome Computer Use è abilitato, usa la Modalità Chrome Computer Use invece di eseguire x-video.ts.

Limiti: Massimo 140s per account normale, 60min per Premium. Elaborazione: 30-60s.


Cita tweet

Cita un tweet esistente con un commento.

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

Parametri:

ParametroDescrizione
<tweet-url>URL da citare (posizionale)
<comment>Testo del commento (posizionale, opzionale)
--profile <dir>Profilo Chrome personalizzato

Nota: Lo script apre il browser con il contenuto compilato. L'utente rivede e pubblica manualmente.

Nota sulla modalità Codex: Se l'utente ha richiesto esplicitamente il plugin Chrome di Codex, usa la Modalità Plugin Chrome di Codex. Altrimenti, se Chrome Computer Use è abilitato, usa la Modalità Chrome Computer Use invece di eseguire x-quote.ts.


Articoli X

Articoli Markdown di lunga forma (richiede X Premium).

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

Parametri:

ParametroDescrizione
<markdown>File Markdown (posizionale)
--cover <path>Immagine di copertina
--title <text>Sovrascrivi il titolo

Frontmatter: title, cover_image supportati nel front matter YAML.

Nota sulla modalità Codex: Se l'utente ha richiesto esplicitamente il plugin Chrome di Codex, segui la Modalità Plugin Chrome di Codex sopra. Se l'utente ha richiesto esplicitamente Chrome Computer Use, segui la Modalità Chrome Computer Use. Altrimenti, preferisci Chrome Computer Use; per articoli Markdown con immagini di contenuto locali, usa il flusso di caricamento immagini dalla barra degli strumenti Inserisci -> Media prima di passare a x-article.ts nella Modalità Script CDP.

Nota sul fallback CDP: Lo script apre il browser con l'articolo compilato. L'utente rivede e pubblica manualmente a meno che non venga usato --submit.

Sicurezza della pubblicazione: Non usare --submit o cliccare su Pubblica a meno che l'utente non confermi esplicitamente l'azione di pubblicazione finale.

Controllo post-composizione: Lo script verifica automaticamente dopo che tutte le immagini sono state inserite:

  • Segnaposto XIMGPH_ rimanenti nel contenuto dell'editor
  • Conteggio immagini previsto vs effettivo

Se il controllo fallisce (avvisi nell'output), avvisa l'utente con i problemi specifici prima che pubblichi.


Risoluzione dei problemi

Porta di debug di Chrome non pronta

Solo fallback CDP: se uno script fallisce con Chrome debug port not ready o Impossibile connettersi, termina prima le istanze CDP di Chrome esistenti, quindi riprova:

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

Importante: Questo dovrebbe essere fatto automaticamente — quando si incontra questo errore, termina le istanze CDP di Chrome e riprova il comando senza chiedere all'utente.

Note

  • Prima esecuzione: è richiesto l'accesso manuale (la sessione persiste)
  • Nella Modalità Plugin Chrome di Codex e nella Modalità Chrome Computer Use, usa la sessione Chrome esistente dell'utente e non avviare un profilo CDP separato
  • Gli script CDP per impostazione predefinita riempiono solo il contenuto nel browser; l'utente deve rivedere e pubblicare manualmente a meno che non venga usato esplicitamente --submit
  • Multipiattaforma: macOS, Linux, Windows

Supporto estensioni

Configurazioni personalizzate tramite EXTEND.md. Vedi la sezione Preferenze per percorsi e opzioni supportate.

FAQ