Post til X (Twitter)
Publiserer tekst, bilder, videoer og langformatartikler til X via en ekte Chrome-nettleser.
I Codex må du ikke blande disse nettleserbanene:
- Codex Chrome-plugin /
@chrome/ Chrome-utvidelse: bruk den innebygdechrome:Chrome-ferdigheten og dens Node REPL-nettleserklient. Dette kreves når brukeren sier «Codex Chrome-plugin», «Codex 自带的 Chrome 插件»,@chromeeller lignende. - Chrome Computer Use: bruk
mcp__computer_use__.*mot det synlige Google Chrome-grensesnittet bare når brukeren ber om Computer Use eller ingen Chrome-plugin-preferanse er oppgitt og Computer Use er tilgjengelig. - CDP-skriptmodus: bruk kun som en reserveløsning når den valgte modusen er utilgjengelig eller brukeren eksplisitt ber om CDP/skriptmodus.
Skriptkatalog
Viktig: Alle skript ligger i scripts/-underkatalogen til denne ferdigheten.
Agentutførelsesinstruksjoner:
- Finn katalogbanen til denne SKILL.md-filen som
{baseDir} - Skriptbane =
{baseDir}/scripts/<script-name>.ts - Erstatt alle
{baseDir}i dette dokumentet med den faktiske banen - Løs
${BUN_X}-kjøretid: hvisbuner installert →bun; hvisnpxer tilgjengelig →npx -y bun; ellers foreslå å installere bun
Skriptreferanse:
| Skript | Formål |
|---|---|
scripts/x-browser.ts | Vanlige innlegg (tekst + bilder), CDP-reserve |
scripts/x-video.ts | Videoinnlegg (tekst + video), CDP-reserve |
scripts/x-quote.ts | Sitat-tweet med kommentar, CDP-reserve |
scripts/x-article.ts | Publisering av langformatartikkel (Markdown), CDP-reserve |
scripts/md-to-html.ts | Markdown → HTML-konvertering |
scripts/copy-to-clipboard.ts | Kopier innhold til utklippstavlen |
scripts/paste-from-clipboard.ts | Send ekte lim inn-tastetrykk |
scripts/check-paste-permissions.ts | Verifiser miljø og tillatelser |
Valg av utførelsesmodus (Obligatorisk)
Velg nøyaktig én modus før du samhandler med X:
- Hvis brukeren eksplisitt ber om Codex Chrome-plugin,
@chrome, Chrome-utvidelsen eller «Codex 自带的 Chrome 插件», bruk Codex Chrome Plugin Mode. Ikke kall Computer Use først. - Hvis brukeren eksplisitt ber om Chrome Computer Use, bruk Chrome Computer Use Mode. Ikke fall tilbake til CDP, Playwright, den innebygde nettleseren eller Chrome-pluginen uten å informere brukeren og få godkjenning.
- Hvis brukeren eksplisitt ber om CDP/skriptmodus, bruk CDP Script Mode.
- Ellers foretrekk Chrome Computer Use Mode. For Markdown X-artikler med lokale innholdsbilder, bruk den testede X-redigeringsflyten: sett inn hvert kroppsbilde fra verktøylinjen (
Sett inn->Media-> dialogikonknappLegg til bilder eller video) på plassholderen, slett deretter plassholderteksten. Bruk CDP Script Mode bare når den valgte nettleserkontrollmodusen er utilgjengelig eller UI-opplastings-/valgflyten er upålitelig.
Bruk aldri den innebygde nettleseren for X-publiseringsarbeidsflyter.
Codex Chrome Plugin Mode
Bruk denne modusen når brukeren ber om Codex Chrome-plugin, @chrome eller Chrome-utvidelsesbanen. Denne bruker brukerens ekte Chrome-profil og X-pålogging gjennom den innebygde Chrome-pluginen, ikke Computer Use og ikke CDP.
Oppsett
- Last inn
chrome:Chrome-ferdigheten før nettleserarbeid. - Bruk
tool_searchfornode_repl jshvis Node REPLjs-verktøyet ikke allerede er synlig. - Initialiser Chrome-nettleserklienten nøyaktig slik Chrome-ferdigheten spesifiserer, kjør deretter et lettvektskall som
browser.user.openTabs()for å bekrefte utvidelsestilkoblingen. - Hvis det første lettvektskallet mislykkes, vent 2 sekunder og prøv én gang til. Hvis det fortsatt mislykkes, følg Chrome-ferdighetens utvidelseskontroller og gjenopprettingstrinn. Hvis kontrollene består men kommunikasjonen fortsatt mislykkes, spør brukeren før du åpner et nytt Chrome-vindu. Ikke bytt til Computer Use eller CDP i stillhet.
Generelle regler
- Bruk Chrome-pluginens
browser.tabs.*,tab.playwright.*,tab.cua.*og filvelger-API-er for X-grensesnitthandlinger. - Skallkommandoer er tillatt for Markdown-forbehandling og rich-HTML-klargjøring av utklippstavle. For X-artikkel kroppsbilder, stol ikke på bildeutklippstavleinnliming; bruk redigeringsprogrammets
Sett inn->Media-opplastingsflyt. - Hvis en filopplasting mislykkes med
Ikke tillatt, fortell brukeren:For å aktivere filopplasting, gå til chrome://extensions i Chrome, klikk Detaljer under Codex-utvidelsen, og aktiver "Tillat tilgang til fil-URLer." Se https://developers.openai.com/codex/app/chrome-extension#upload-files for detaljer. - Hvis Chrome-pluginen rapporterer
native pipe is closed, prøv det lette nettleseranropet én gang etter 2 sekunder, kjør deretter Chrome-ferdighetens helsesjekker. Hvis Chrome kjører, utvidelsen er aktivert og den opprinnelige vertsmanifestet er riktig, be om tillatelse til å åpne et nytt Chrome-vindu og prøv på nytt. Ikke fortsett å sende nettleserhandlinger gjennom den ødelagte pipen. - Klikk aldri
Publiser,Posteller noen eksternt synlig send-handling uten eksplisitt endelig bekreftelse fra brukeren i den nåværende samtalen.
X-artikler
- Konverter Markdown og behold bildekartet:
${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json - Les JSON-utdataene for
title,coverImageogcontentImages(placeholder→localPath). - Åpne eller opprett artikkelutkastet på
https://x.com/compose/articles. - Last opp forsidebildet med Chrome-pluginens filvelgerflyt. Hvis opplastingen blokkeres av utvidelsestillatelser, stopp og rapporter den nøyaktige tillatelsesrettingen over.
- Fyll inn tittelen, kopier deretter rik HTML:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html - Lim inn i artikkelteksten med et ekte lim inn-tastetrykk gjennom Chrome-pluginen. På macOS bruk
Meta+V. - Bekreft at redigeringsprogrammets tekst inneholder artikkelteksten og
XIMGPH_-plassholdere. Stol ikke påtab.clipboard.readText()som bevis på systemutklippstavlen etter skallutklippstavleskriving; på macOS verifiser medpbpasteom nødvendig. - For hvert
contentImages-element i plassholderrekkefølge:- Finn den synlige plassholderteksten (
XIMGPH_N) og klikk på den for å plassere markøren der. - Åpne verktøylinjemenyen
Sett inn->Media. - I modalen, klikk på ikonknappen med
aria-label="Legg til bilder eller video"; ikke klikk på teksten/drop-sonen eller skjult filinndata. - Bruk filvelgeren til å laste opp bildets
localPath. - Etter at bildet vises, hvis
XIMGPH_Nfortsatt er over det, velg nøyaktig den plassholderen og trykkDeleteførst. BrukBackspacebare hvisDeletemislykkes og den valgte teksten bekreftes å være nøyaktig plassholderen. - Bekreft at plassholdertellingen for den
XIMGPH_Ner0.
- Finn den synlige plassholderteksten (
- Åpne Forhåndsvisning og bekreft tittel, forsidebilde, tekst, lenker og bilder.
- Be om eksplisitt bekreftelse før du klikker
Publiser.
Preferanser (EXTEND.md)
Sjekk EXTEND.md i prioritetsrekkefølge — den første som blir funnet vinner:
| Prioritet | Sti | Omfang |
|---|---|---|
| 1 | .baoyu-skills/baoyu-post-to-x/EXTEND.md | Prosjekt |
| 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 | Brukerhjem |
Hvis ingen er funnet, bruk standardverdier.
EXTEND.md støtter: Standard Chrome-profil
Forutsetninger
- Google Chrome eller Chromium
bun-kjøretid- Første kjøring: logg inn på X manuelt (økt lagret)
Forhåndssjekk (Valgfritt)
Før første bruk, foreslå å kjøre miljøsjekken. Brukeren kan hoppe over hvis de foretrekker det.
${BUN_X} {baseDir}/scripts/check-paste-permissions.ts
Sjekker: Chrome, profilisolering, Bun, Tilgjengelighet, utklippstavle, lim inn-tastetrykk, Chrome-konflikter.
Hvis en sjekk mislykkes, gi rettledning per element:
| Sjekk | Løsning |
|---|---|
| Chrome | Installer Chrome eller sett X_BROWSER_CHROME_PATH-miljøvariabel |
| Profilmappe | Delt profil på baoyu-skills/chrome-profile (se CLAUDE.md Chrome Profile-seksjonen) |
| Bun-kjøretid | brew install oven-sh/bun/bun (macOS) eller npm install -g bun |
| Tilgjengelighet (macOS) | Systeminnstillinger → Personvern og sikkerhet → Tilgjengelighet → aktiver terminalapp |
| Kopier til utklippstavle | Sørg for at Swift/AppKit er tilgjengelig (macOS Xcode kommandolinjeverktøy: xcode-select --install) |
| Lim inn-tastetrykk (macOS) | Samme som Tilgjengelighetsretting over |
| Lim inn-tastetrykk (Linux) | Installer xdotool (X11) eller ydotool (Wayland) |
Referanser
- Vanlige innlegg: Se
references/regular-posts.mdfor manuell arbeidsflyt, feilsøking og tekniske detaljer - X-artikler: Se
references/articles.mdfor guide til publisering av langformatartikler
Chrome Computer Use Mode
Bruk denne modusen når brukeren eksplisitt ber om Chrome Computer Use, eller når ingen Chrome-plugin-preferanse er oppgitt og Codex kan kontrollere Google Chrome med Computer Use. Denne bruker brukerens eksisterende Chrome-vindu, informasjonskapsler, pålogging, utvidelser og X-økt.
Generelle regler:
- Start hver assistenttur som kontrollerer Chrome med å kalle
get_app_stateforGoogle Chrome. - Foretrekk elementindekshandlinger når tilgjengelig; bruk koordinater bare for redigering av markørtekst eller dravalg.
- Ikke bruk den innebygde nettleseren, Chrome-pluginen, Playwright eller CDP for X-grensesnitthandlinger i denne modusen med mindre brukeren godkjenner et modusbytte.
- Klikk aldri
Publiser,Posteller noen eksternt synlig send-handling uten eksplisitt endelig bekreftelse fra brukeren i den nåværende samtalen.
Vanlige innlegg:
- Åpne eller naviger Chrome til
https://x.com/compose/post. - Skriv inn innleggsteksten i komponeringsfeltet med Computer Use.
- For hvert bilde, kjør:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts image /absolutt/sti/til/bilde.png - Lim inn med Computer Use (
super+vpå macOS,control+vpå Windows/Linux), vent deretter til X er ferdig med å laste opp media. - Be om bekreftelse før du klikker
Post.
Videoinnlegg:
- Åpne eller naviger Chrome til
https://x.com/compose/post. - Skriv inn innleggsteksten i komponeringsfeltet.
- Bruk det synlige medieopplastings-/filvelgergrensesnittet for å legge ved videoen.
- Vent til opplasting og behandling er fullført.
- Be om bekreftelse før du klikker
Post.
Sitat-tweets:
- Åpne tweet-URL-en i Chrome.
- Bruk det synlige sitat-/repost-grensesnittet for å velge Quote.
- Skriv kommentaren.
- Be om bekreftelse før du klikker
Post.
X-artikler:
- Konverter Markdown og behold bildekartet:
${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json - Les JSON-utdataene for
title,coverImageogcontentImages(placeholder→localPath). - I Chrome, åpne
https://x.com/compose/articles, opprett eller åpne utkastet, last opp forsidebildet hvis det finnes, og fyll inn tittelen. - Kopier rik HTML til utklippstavlen:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html - Lim inn i artikkelteksten med Computer Use.
- For hver
contentImages-oppføring i plassholderrekkefølge:- Finn den nøyaktige synlige plassholderteksten som
XIMGPH_3og klikk på den for å sette innsettingspunktet. - Åpne verktøylinjens
Sett inn-nedtrekksmeny, velgMedia, klikk deretter på modalens ikonknapp merketLegg til bilder eller video. - Bruk den innebygde filvelgeren for å velge bildets
localPath. - Vent til bildeblokken vises og eventuell opplastingsaktivitet er ferdig.
- Hvis plassholderen forblir over det innsatte bildet, velg på nytt nøyaktig den plassholderteksten og trykk
Deleteførst. BrukBackspacebare hvisDeletemislykkes og den valgte teksten bekreftes å være nøyaktig plassholderen.
- Finn den nøyaktige synlige plassholderteksten som
- Bekreft at ingen
XIMGPH_-plassholdere gjenstår og at de forventede bildene vises. - Åpne Forhåndsvisning og bekreft tittel, forsidebilde, tekst, lenker og bilder.
- Be om eksplisitt bekreftelse før du klikker
Publiser.
Hvis Computer Use-valg, verktøylinjeopplasting eller filvelgerkontroll blir upålitelig, stopp og rapporter blokkeringen i stedet for å bytte til Chrome-plugin eller CDP i stillhet.
CDP Script Mode (Reserve)
Bruk skriptseksjonene nedenfor bare når den valgte nettleserkontrollmodusen er utilgjengelig, upålitelig eller eksplisitt ikke forespurt. Disse skriptene starter eller gjenbruker en ekte Chrome-instans via CDP og holder nettleseren åpen for gjennomgang.
Ikke bruk CDP Script Mode når brukeren eksplisitt krever Codex Chrome-plugin eller Chrome Computer Use med mindre brukeren godkjenner reserven etter at du forklarer blokkeringen.
Valg av innleggstype
Med mindre brukeren eksplisitt spesifiserer innleggstypen:
- Ren tekst + innenfor 10 000 tegn → Vanlig innlegg (Premium-medlemmer støtter opptil 10 000 tegn, ikke-Premium: 280)
- Markdown-fil (.md) → X-artikkel
Vanlige innlegg
${BUN_X} {baseDir}/scripts/x-browser.ts "Hei!" --image ./bilde.png
Parametere:
| Parameter | Beskrivelse |
|---|---|
<text> | Innleggsinnhold (posisjonell) |
--image <path> | Bilde-fil (kan gjentas, maks 4) |
--profile <dir> | Tilpasset Chrome-profil |
Merk: Skriptet åpner nettleseren med innhold fylt inn. Brukeren gjennomgår og publiserer manuelt.
Codex-modusmerknad: Hvis brukeren eksplisitt ba om Codex Chrome-plugin, bruk Codex Chrome Plugin Mode. Ellers, hvis Chrome Computer Use er aktivert, bruk Chrome Computer Use Mode i stedet for å kjøre x-browser.ts.
Videoinnlegg
Tekst + videofil.
${BUN_X} {baseDir}/scripts/x-video.ts "Se dette!" --video ./klipp.mp4
Parametere:
| Parameter | Beskrivelse |
|---|---|
<text> | Innleggsinnhold (posisjonell) |
--video <path> | Videofil (MP4, MOV, WebM) |
--profile <dir> | Tilpasset Chrome-profil |
Merk: Skriptet åpner nettleseren med innhold fylt inn. Brukeren gjennomgår og publiserer manuelt.
Codex-modusmerknad: Hvis brukeren eksplisitt ba om Codex Chrome-plugin, bruk Codex Chrome Plugin Mode. Ellers, hvis Chrome Computer Use er aktivert, bruk Chrome Computer Use Mode i stedet for å kjøre x-video.ts.
Grenser: Vanlig maks 140s, Premium 60min. Behandling: 30-60s.
Sitat-tweets
Siter en eksisterende tweet med kommentar.
${BUN_X} {baseDir}/scripts/x-quote.ts https://x.com/user/status/123 "Flott innsikt!"
Parametere:
| Parameter | Beskrivelse |
|---|---|
<tweet-url> | URL å sitere (posisjonell) |
<comment> | Kommentartekst (posisjonell, valgfri) |
--profile <dir> | Tilpasset Chrome-profil |
Merk: Skriptet åpner nettleseren med innhold fylt inn. Brukeren gjennomgår og publiserer manuelt.
Codex-modusmerknad: Hvis brukeren eksplisitt ba om Codex Chrome-plugin, bruk Codex Chrome Plugin Mode. Ellers, hvis Chrome Computer Use er aktivert, bruk Chrome Computer Use Mode i stedet for å kjøre x-quote.ts.
X-artikler
Langformat Markdown-artikler (krever X Premium).
${BUN_X} {baseDir}/scripts/x-article.ts article.md
${BUN_X} {baseDir}/scripts/x-article.ts article.md --cover ./cover.jpg
Parametere:
| Parameter | Beskrivelse |
|---|---|
<markdown> | Markdown-fil (posisjonell) |
--cover <path> | Forsidebilde |
--title <text> | Overstyr tittel |
Frontmatter: title, cover_image støttes i YAML front matter.
Codex-modusmerknad: Hvis brukeren eksplisitt ba om Codex Chrome-plugin, følg Codex Chrome Plugin Mode over. Hvis brukeren eksplisitt ba om Chrome Computer Use, følg Chrome Computer Use Mode. Ellers foretrekk Chrome Computer Use; for Markdown-artikler med lokale innholdsbilder, bruk verktøylinjens Sett inn -> Media bildeopplastingsflyt før du faller tilbake til x-article.ts i CDP Script Mode.
CDP-reservemerknad: Skriptet åpner nettleseren med artikkel fylt inn. Brukeren gjennomgår og publiserer manuelt med mindre --submit brukes.
Publiseringssikkerhet: Ikke bruk --submit eller klikk Publiser med mindre brukeren eksplisitt bekrefter den endelige offentlige publiseringshandlingen.
Etterkomponeringskontroll: Skriptet verifiserer automatisk etter at alle bilder er satt inn:
- Gjenværende
XIMGPH_-plassholdere i redigeringsinnhold - Forventet vs faktisk antall bilder
Hvis kontrollen mislykkes (advarsler i utdata), varsle brukeren med de spesifikke problemene før de publiserer.
Feilsøking
Chrome-feilsøkingsport ikke klar
Kun CDP-reserve: hvis et skript mislykkes med Chrome debug port not ready eller Unable to connect, drep eksisterende Chrome CDP-instanser først, og prøv deretter på nytt:
pkill -f "Chrome.*remote-debugging-port" 2>/dev/null; pkill -f "Chromium.*remote-debugging-port" 2>/dev/null; sleep 2
Viktig: Dette bør gjøres automatisk — når du møter denne feilen, drep Chrome CDP-instanser og prøv kommandoen på nytt uten å spørre brukeren.
Notater
- Første kjøring: manuell pålogging kreves (økten vedvarer)
- I Codex Chrome Plugin Mode og Chrome Computer Use Mode, bruk brukerens eksisterende Chrome-økt og ikke start en separat CDP-profil
- CDP-skript fyller bare innhold i nettleseren som standard; brukeren må gjennomgå og publisere manuelt med mindre
--submiteksplisitt brukes - Plattformuavhengig: macOS, Linux, Windows
Utvidelsesstøtte
Tilpassede konfigurasjoner via EXTEND.md. Se Preferanser-seksjonen for stier og støttede alternativer.


