# Automatiser opslag til X (Twitter) Agentfærdighed

> Automatiser udgivelse af tekst, billeder, videoer og længere artikler til X (Twitter) ved hjælp af en rigtig Chrome-browser. Understøtter forskellige tilstande, herunder Codex Chrome-plugin, Computerbrug og CDP-script. Begynd at dele indhold effektivt.

- Canonical: https://nanoskill.ai/da/skills/post-to-twitter
- Markdown: https://nanoskill.ai/da/skills/post-to-twitter.md
- Author: JimLiu
- Published: 2026-06-01T07:19:10.429Z
- Updated: 2026-07-25T04:34:26.608Z
- Language: da
- 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

Færdigheden 'Opslag til X (Twitter)' tilbyder en robust løsning til automatisering af indholdspublicering på X, så brugere effektivt kan dele tekst, billeder, videoer og længere artikler. Dette værktøj er designet til alle, der ønsker at strømline deres tilstedeværelse på sociale medier, fra individuelle brugere til indholdsskabere og marketingfolk. Det integreres med rigtige Chrome-browserinstanser, hvilket sikrer kompatibilitet med X's platform samtidig med, at der tilbydes fleksible kontrolmuligheder.

Denne færdighed skiller sig ud med sin understøttelse af flere browserkontroltilstande, herunder Codex Chrome-plugin, Chrome Computerbrug og CDP-scripttilstand. Denne tilpasningsevne gør det muligt for den at fungere effektivt på tværs af forskellige brugeropsætninger og præferencer. En nøglefunktion er dens evne til at publicere detaljerede X-artikler direkte fra Markdown-filer, håndtere komplekse opgaver som upload af forsidebilleder og indlejring af indholdsbilleder, hvilket er uvurderligt til deling af dybdegående indhold.

Brugere kan udnytte denne færdighed til en række scenarier, såsom at automatisere daglige opdateringer på sociale medier, publicere omfattende blogindlæg eller rapporter som X-artikler eller hurtigt citere og kommentere på andre tweets. Den inkluderer nyttige forhåndstjek for at sikre, at miljøet er korrekt konfigureret, og giver klar vejledning til fejlfinding, hvilket gør den tilgængelig selv for brugere, der er nye inden for automatisering.

## Key features

- **Multi-indholdsopslag**: Post tekst, billeder og videoer til X (Twitter) problemfrit, håndtering af forskellige medietyper til forskellige behov for indholdsdeling.
- **Udgivelse af lange artikler**: Udgiv X-artikler fra Markdown-filer, inklusive forsidebilleder og indlejrede indholdsbilleder, ideelt til detaljerede opslag.
- **Fleksible browserkontrolympustilstande**: Understøtter Codex Chrome-plugin, Chrome Computer Use og CDP Script-tilstand, der tilpasser sig forskellige udførelsesmiljøer og brugerpræferencer.
- **Citat-tweet-funktionalitet**: Citer nemt eksisterende tweets med dine kommentarer, hvilket letter engagement og diskussion på platformen.
- **Forudgående miljøtjek**: Inkluderer et script til at kontrollere nødvendige forudsætninger som Chrome, Bun og tilgængelighedstilladelser og giver vejledning til eventuelle problemer.

## Use cases

- **Automatiser opdateringer på sociale medier**: Indholdsskabere og marketingfolk kan planlægge og automatisere deres regelmæssige opslag, herunder tekst, billeder og videoer, for at opretholde en aktiv tilstedeværelse på X uden manuel indgriben.
- **Udgiv detaljerede X-artikler**: Journalister, bloggere og analytikere kan udgive lange artikler direkte fra Markdown, komplet med rich media, for at dele dybdegående indhold med deres publikum på X.
- **Citer og kommenter effektivt**: Brugere kan hurtigt citere tweets og tilføje deres kommentarer, hvilket strømliner processen med at engagere sig i trendende emner eller andre brugeres indhold på X.

## Result preview

Se et Twitter-opslag om et AI-produktivitetsværktøj med relevante billeder og hashtags klargjort til publicering.

![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

### Trin 1：Installer

Tilføj færdigheden til din agent.

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

### Trin 2：Del opslagside

Angiv dine tweet-, billed-, video- eller artikelidéer, og bed færdigheden om at forberede dem til publicering på X.

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

### Trin 3：Gennemse før publicering

Gennemse det genererede opslag, og bekræft, før det publiceres.

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

## Skill definition

# Send til X (Twitter)

Sender tekst, billeder, videoer og lange artikler til X via en rigtig Chrome-browser.

I Codex må du ikke blande disse browser-stier:
- **Codex Chrome-plugin / `@chrome` / Chrome-udvidelse**: brug den indbyggede `chrome:Chrome`-færdighed og dens Node REPL-browserklient. Dette er påkrævet, når brugeren siger "Codex Chrome-plugin", "Codex 自带的 Chrome 插件", `@chrome` eller lignende.
- **Chrome Computer Use**: brug `mcp__computer_use__.*` mod den synlige Google Chrome-brugergrænseflade kun, når brugeren beder om Computer Use, eller der ikke er angivet nogen Chrome-plugin-præference, og Computer Use er tilgængelig.
- **CDP-scripttilstand**: brug kun som en fallback, når den valgte tilstand er utilgængelig, eller brugeren udtrykkeligt beder om CDP/scripttilstand.

## Scriptmappe

**Vigtigt**: Alle scripts er placeret i undermappen `scripts/` til denne færdighed.

**Udførelsesinstruktioner for agent**:
1. Bestem denne SKILL.md-fils mappesti som `{baseDir}`
2. Scriptsti = `{baseDir}/scripts/<script-navn>.ts`
3. Erstat alle `{baseDir}` i dette dokument med den faktiske sti
4. Løs `${BUN_X}`-runtime: hvis `bun` er installeret → `bun`; hvis `npx` er tilgængelig → `npx -y bun`; ellers foreslå installation af bun

**Scriptreference**:
| Script | Formål |
|--------|---------|
| `scripts/x-browser.ts` | Almindelige opslag (tekst + billeder), CDP-fallback |
| `scripts/x-video.ts` | Videoopslag (tekst + video), CDP-fallback |
| `scripts/x-quote.ts` | Citér tweet med kommentar, CDP-fallback |
| `scripts/x-article.ts` | Langformet artikeludgivelse (Markdown), CDP-fallback |
| `scripts/md-to-html.ts` | Markdown → HTML-konvertering |
| `scripts/copy-to-clipboard.ts` | Kopier indhold til udklipsholder |
| `scripts/paste-from-clipboard.ts` | Send ægte indsæt-tastetryk |
| `scripts/check-paste-permissions.ts` | Bekræft miljø og tilladelser |

## Valg af udførelsestilstand (Påkrævet)

Vælg præcis én tilstand, før du interagerer med X:

1. Hvis brugeren udtrykkeligt beder om Codex Chrome-plugin, `@chrome`, Chrome-udvidelsen eller "Codex 自带的 Chrome 插件", så brug **Codex Chrome-plugin-tilstand**. Kald ikke Computer Use først.
2. Hvis brugeren udtrykkeligt beder om Chrome Computer Use, så brug **Chrome Computer Use-tilstand**. Fald ikke tilbage til CDP, Playwright, den indbyggede browser eller Chrome-plugin uden at fortælle det til brugeren og få godkendelse.
3. Hvis brugeren udtrykkeligt beder om CDP/scripttilstand, så brug **CDP Script-tilstand**.
4. Ellers foretræk **Chrome Computer Use-tilstand**. For **X-artikler** med Markdown og lokale indholdsbilleder skal du bruge den testede X-redigeringsarbejdsgang: indsæt hvert brødtekstbillede fra værktøjslinjen (`Indsæt` -> `Medie` -> dialog-ikonknap `Tilføj fotos eller video`) på dets pladsholder, og slet derefter pladsholderteksten. Brug CDP Script-tilstand kun, når den valgte browser-kontroltilstand er utilgængelig, eller UI-upload-/valgflowet er upålidelig.

Brug aldrig den indbyggede browser til X-udgivelsesarbejdsgange.

## Codex Chrome-plugin-tilstand

Brug denne tilstand, når brugeren anmoder om Codex Chrome-plugin, `@chrome` eller Chrome-udvidelsesstien. Dette bruger brugerens rigtige Chrome-profil og X-login gennem den indbyggede Chrome-plugin, ikke Computer Use og ikke CDP.

**Opsætning**
1. Indlæs færdigheden `chrome:Chrome` før browserarbejde.
2. Brug `tool_search` til `node_repl js`, hvis Node REPL `js`-værktøjet ikke allerede er synligt.
3. Initialiser Chrome-browserklienten præcis som specificeret af Chrome-færdigheden, og kør derefter et letvægtskald såsom `browser.user.openTabs()` for at bekræfte udvidelsesforbindelsen.
4. Hvis det første letvægtskald mislykkes, skal du vente 2 sekunder og prøve igen én gang. Hvis det stadig mislykkes, skal du følge Chrome-færdighedens udvidelseskontrol og gendannelsestrin. Hvis kontrollerne består, men kommunikationen stadig mislykkes, skal du spørge brugeren, før du åbner et nyt Chrome-vindue. Skift ikke stille til Computer Use eller CDP.

**Generelle regler**
- Brug Chrome-pluginnets `browser.tabs.*`, `tab.playwright.*`, `tab.cua.*` og filvælger-API'er til X UI-handlinger.
- Shellkommandoer er tilladt til Markdown-forbehandling og forberedelse af rig HTML-udklipsholder. For billeder i X-artiklens brødtekst skal du ikke stole på indsættelse af billedudklipsholder; brug redaktørens `Indsæt` -> `Medie` uploadflow.
- Hvis en filupload mislykkes med `Ikke tilladt`, så fortæl brugeren: `For at aktivere filupload skal du gå til chrome://extensions i Chrome, klikke på Detaljer under Codex-udvidelsen og aktivere "Tillad adgang til fil-URL'er". Se https://developers.openai.com/codex/app/chrome-extension#upload-files for detaljer.`
- Hvis Chrome-pluginnet rapporterer `native pipe is closed`, skal du prøve det letvægts browserkald én gang efter 2 sekunder og derefter køre Chrome-færdighedens sundhedstjek. Hvis Chrome kører, udvidelsen er aktiveret, og native host-manifestet er korrekt, skal du bede om tilladelse til at åbne et nyt Chrome-vindue og prøve igen. Bliv ikke ved med at sende browserhandlinger gennem den ødelagte pipe.
- Klik aldrig på `Udgiv`, `Send`, eller nogen eksternt synlig indsendelseshandling uden udtrykkelig endelig bekræftelse fra brugeren i den aktuelle samtale.

**X-artikler**
1. Konverter Markdown og behold billedkortet:
   ```bash
   ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
   ```
2. Læs JSON-uddata for `title`, `coverImage` og `contentImages` (`placeholder` -> `localPath`).
3. Åbn eller opret artikeludkastet på `https://x.com/compose/articles`.
4. Upload forsidebilledet med Chrome-pluggets filvælgerflow. Hvis upload er blokeret af udvidelsestilladelser, skal du stoppe og rapportere den nøjagtige tilladelsesrettelse ovenfor.
5. Udfyld titlen, og kopier derefter rig HTML:
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
   ```
6. Indsæt i artikelbrødteksten med et ægte indsæt-tastetryk gennem Chrome-pluginnet. På macOS brug `Meta+V`.
7. Bekræft, at redaktørens tekst indeholder artikelbrødteksten og `XIMGPH_` pladsholdere. Stol ikke på `tab.clipboard.readText()` som bevis på systemudklipsholderen efter shell-udklipsholderskrivninger; på macOS bekræft med `pbpaste` efter behov.
8. For hvert `contentImages`-element i pladsholder-rækkefølge:
   - Find den synlige pladsholdertekst (`XIMGPH_N`), og klik på den for at placere markøren der.
   - Åbn værktøjslinjemenuen `Indsæt` -> `Medie`.
   - I modalvinduet skal du klikke på ikonknappen med `aria-label="Tilføj fotos eller video"`; klik ikke på teksten/dropzonen eller skjult filinput.
   - Brug filvælgeren til at uploade dette billedes `localPath`.
   - Når billedet vises, hvis `XIMGPH_N` stadig er over det, skal du markere præcis denne pladsholder og trykke på `Delete` først. Brug kun `Backspace`, hvis `Delete` mislykkes, og den valgte tekst bekræftes at være præcis pladsholderen.
   - Bekræft, at pladsholderantallet for denne `XIMGPH_N` er `0`.
9. Åbn Forhåndsvisning og bekræft titel, forside, brødtekst, links og billeder.
10. Bed om udtrykkelig bekræftelse, før du klikker på `Udgiv`.

## Præferencer (EXTEND.md)

Tjek EXTEND.md i prioritetsrækkefølge — den første, der findes, vinder:

| Prioritet | Sti | Omfang |
|----------|------|-------|
| 1 | `.baoyu-skills/baoyu-post-to-x/EXTEND.md` | Projekt |
| 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` | Brugerhjem |

Hvis ingen findes, brug standarder.

**EXTEND.md understøtter**: Standard Chrome-profil

## Forudsætninger

- Google Chrome eller Chromium
- `bun` runtime
- Første kørsel: log ind på X manuelt (session gemmes)

## Pre-flight-tjek (Valgfrit)

Før første brug foreslås det at køre miljøtjekket. Brugeren kan springe over, hvis de foretrækker det.

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

Tjekker: Chrome, profil-isolation, Bun, Tilgængelighed, udklipsholder, indsæt-tastetryk, Chrome-konflikter.

**Hvis et tjek mislykkes**, giv rettelsesvejledning pr. element:

| Tjek | Rettelse |
|-------|-----|
| Chrome | Installer Chrome eller indstil `X_BROWSER_CHROME_PATH` miljøvariabel |
| Profilmappe | Delt profil i `baoyu-skills/chrome-profile` (se CLAUDE.md Chrome Profile-sektionen) |
| Bun runtime | `brew install oven-sh/bun/bun` (macOS) eller `npm install -g bun` |
| Tilgængelighed (macOS) | Systemindstillinger → Privatliv og sikkerhed → Tilgængelighed → aktiver terminalapp |
| Udklipsholder kopiering | Sørg for, at Swift/AppKit er tilgængeligt (macOS Xcode CLI-værktøjer: `xcode-select --install`) |
| Indsæt-tastetryk (macOS) | Samme som Tilgængeligheds-rettelse ovenfor |
| Indsæt-tastetryk (Linux) | Installer `xdotool` (X11) eller `ydotool` (Wayland) |

## Referencer

- **Almindelige opslag**: Se `references/regular-posts.md` for manuel arbejdsgang, fejlfinding og tekniske detaljer
- **X-artikler**: Se `references/articles.md` for guide til langformet artikeludgivelse

---

## Chrome Computer Use-tilstand

Brug denne tilstand, når brugeren udtrykkeligt beder om Chrome Computer Use, eller når der ikke er angivet nogen Chrome-plugin-præference, og Codex kan styre `Google Chrome` med Computer Use. Dette bruger brugerens eksisterende Chrome-vindue, cookies, login, udvidelser og X-session.

**Generelle regler**:
- Start hver assistent-tur, der styrer Chrome, med at kalde `get_app_state` for `Google Chrome`.
- Foretræk element-indeks-handlinger, når de er tilgængelige; brug kun koordinater til redigering af redaktørtekst eller trækmarkering.
- Brug ikke den indbyggede browser, Chrome-plugin, Playwright eller CDP til X UI-handlinger i denne tilstand, medmindre brugeren godkender et tilstandsskift.
- Klik aldrig på `Udgiv`, `Send`, eller nogen eksternt synlig indsendelseshandling uden udtrykkelig endelig bekræftelse fra brugeren i den aktuelle samtale.

**Almindelige opslag**:
1. Åbn eller naviger Chrome til `https://x.com/compose/post`.
2. Skriv opslagsteksten ind i komponeringsfeltet ved hjælp af Computer Use.
3. For hvert billede kør:
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts image /absolut/sti/til/billede.png
   ```
4. Indsæt med Computer Use (`super+v` på macOS, `control+v` på Windows/Linux), og vent derefter, indtil X er færdig med at uploade medier.
5. Bed om bekræftelse, før du klikker på `Send`.

**Videoopslag**:
1. Åbn eller naviger Chrome til `https://x.com/compose/post`.
2. Skriv opslagsteksten ind i komponeringsfeltet.
3. Brug den synlige medieupload/filvælger-UI til at vedhæfte videoen.
4. Vent på, at upload og behandling er fuldført.
5. Bed om bekræftelse, før du klikker på `Send`.

**Citér tweets**:
1. Åbn tweet-URL'en i Chrome.
2. Brug den synlige citat/repost-UI til at vælge Citat.
3. Skriv kommentaren.
4. Bed om bekræftelse, før du klikker på `Send`.

**X-artikler**:
1. Konverter Markdown og behold billedkortet:
   ```bash
   ${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json
   ```
2. Læs JSON-uddata for `title`, `coverImage` og `contentImages` (`placeholder` -> `localPath`).
3. I Chrome skal du åbne `https://x.com/compose/articles`, oprette eller åbne udkastet, uploade forsidebilledet, hvis det findes, og udfylde titlen.
4. Kopier rig HTML til udklipsholderen:
   ```bash
   ${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html
   ```
5. Indsæt i artikelbrødteksten med Computer Use.
6. For hver `contentImages`-post i pladsholder-rækkefølge:
   - Find den nøjagtige synlige pladsholdertekst som `XIMGPH_3`, og klik på den for at indstille indsættelsespunktet.
   - Åbn værktøjslinjens `Indsæt`-dropdown, vælg `Medie`, og klik derefter på modalets ikonknap mærket `Tilføj fotos eller video`.
   - Brug den native filvælger til at vælge billedets `localPath`.
   - Vent, indtil billedblokken vises, og eventuel uploadaktivitet er afsluttet.
   - Hvis pladsholderen stadig sidder over det indsatte billede, skal du genmarkere præcis denne pladsholdertekst og trykke på `Delete` først. Brug kun `Backspace`, hvis `Delete` mislykkes, og den valgte tekst bekræftes at være præcis pladsholderen.
7. Bekræft, at ingen `XIMGPH_` pladsholdere er tilbage, og de forventede billeder vises.
8. Åbn Forhåndsvisning og bekræft titel, forside, brødtekst, links og billeder.
9. Bed om udtrykkelig bekræftelse, før du klikker på `Udgiv`.

Hvis Computer Use-markering, værktøjslinjeupload eller filvælgerstyring bliver upålidelig, skal du stoppe og rapportere blokeringen i stedet for stiltiende at skifte til Chrome-plugin eller CDP.

---

## CDP Script-tilstand (Fallback)

Brug scriptafsnittene nedenfor kun, når den valgte browser-kontroltilstand er utilgængelig, upålidelig eller udtrykkeligt ikke anmodet. Disse scripts starter eller genbruger en rigtig Chrome-instans via CDP og holder browseren åben til gennemsyn.

Brug ikke CDP Script-tilstand, når brugeren udtrykkeligt kræver Codex Chrome-plugin eller Chrome Computer Use, medmindre brugeren godkender fallbacken, efter du har forklaret blokeringen.

---

## Opslagstypevalg

Medmindre brugeren udtrykkeligt specificerer opslagstypen:
- **Ren tekst** + inden for 10.000 tegn → **Almindeligt opslag** (Premium-medlemmer understøtter op til 10.000 tegn, ikke-Premium: 280)
- **Markdown-fil** (.md) → **X-artikel**

## Almindelige opslag

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

**Parametre**:
| Parameter | Beskrivelse |
|-----------|-------------|
| `<text>` | Opslagsindhold (positionel) |
| `--image <sti>` | Billedfil (kan gentages, maks. 4) |
| `--profile <mappe>` | Brugerdefineret Chrome-profil |

**Bemærk**: Script åbner browser med udfyldt indhold. Bruger gennemgår og udgiver manuelt.

**Codex-tilstandsbemærkning**: Hvis brugeren udtrykkeligt har anmodet om Codex Chrome-plugin, skal du bruge **Codex Chrome-plugin-tilstand**. Ellers, hvis Chrome Computer Use er aktiveret, skal du bruge **Chrome Computer Use-tilstand** i stedet for at køre `x-browser.ts`.

---

## Videoopslag

Tekst + videofil.

```bash
${BUN_X} {baseDir}/scripts/x-video.ts "Se her!" --video ./clip.mp4
```

**Parametre**:
| Parameter | Beskrivelse |
|-----------|-------------|
| `<text>` | Opslagsindhold (positionel) |
| `--video <sti>` | Videofil (MP4, MOV, WebM) |
| `--profile <mappe>` | Brugerdefineret Chrome-profil |

**Bemærk**: Script åbner browser med udfyldt indhold. Bruger gennemgår og udgiver manuelt.

**Codex-tilstandsbemærkning**: Hvis brugeren udtrykkeligt har anmodet om Codex Chrome-plugin, skal du bruge **Codex Chrome-plugin-tilstand**. Ellers, hvis Chrome Computer Use er aktiveret, skal du bruge **Chrome Computer Use-tilstand** i stedet for at køre `x-video.ts`.

**Grænser**: Almindelig 140s maks, Premium 60min. Behandling: 30-60s.

---

## Citér tweets

Citér et eksisterende tweet med kommentar.

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

**Parametre**:
| Parameter | Beskrivelse |
|-----------|-------------|
| `<tweet-url>` | URL, der skal citeres (positionel) |
| `<kommentar>` | Kommentartekst (positionel, valgfri) |
| `--profile <mappe>` | Brugerdefineret Chrome-profil |

**Bemærk**: Script åbner browser med udfyldt indhold. Bruger gennemgår og udgiver manuelt.

**Codex-tilstandsbemærkning**: Hvis brugeren udtrykkeligt har anmodet om Codex Chrome-plugin, skal du bruge **Codex Chrome-plugin-tilstand**. Ellers, hvis Chrome Computer Use er aktiveret, skal du bruge **Chrome Computer Use-tilstand** i stedet for at køre `x-quote.ts`.

---

## X-artikler

Langformede Markdown-artikler (kræver X Premium).

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

**Parametre**:
| Parameter | Beskrivelse |
|-----------|-------------|
| `<markdown>` | Markdown-fil (positionel) |
| `--cover <sti>` | Forsidebillede |
| `--title <tekst>` | Overskriv titel |

**Forside**: `title`, `cover_image` understøttes i YAML-forside.

**Codex-tilstandsbemærkning**: Hvis brugeren udtrykkeligt har anmodet om Codex Chrome-plugin, skal du følge **Codex Chrome-plugin-tilstand** ovenfor. Hvis brugeren udtrykkeligt har anmodet om Chrome Computer Use, skal du følge **Chrome Computer Use-tilstand**. Ellers foretræk Chrome Computer Use; for Markdown-artikler med lokale indholdsbilleder skal du bruge værktøjslinjens `Indsæt` -> `Medie` billedupload-workflow, før du falder tilbage til `x-article.ts` i **CDP Script-tilstand**.

**CDP fallback-bemærkning**: Scriptet åbner browser med artikel udfyldt. Bruger gennemgår og udgiver manuelt, medmindre `--submit` bruges.

**Udgivelsessikkerhed**: Brug ikke `--submit` eller klik på `Udgiv`, medmindre brugeren udtrykkeligt bekræfter den endelige offentlige udgivelseshandling.

**Post-kompositionstjek**: Scriptet verificerer automatisk efter alle billeder er indsat:
- Resterende `XIMGPH_` pladsholdere i redaktørens indhold
- Forventet vs faktisk billedantal

Hvis tjekket mislykkes (advarsler i output), skal du advare brugeren med de specifikke problemer, før de udgiver.

---

## Fejlfinding

### Chrome debug-port er ikke klar

Kun CDP fallback: hvis et script mislykkes med `Chrome debug port not ready` eller `Unable to connect`, dræb eksisterende Chrome CDP-instanser først, og prøv derefter igen:

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

**Vigtigt**: Dette skal gøres automatisk — når du støder på denne fejl, dræb Chrome CDP-instanser og prøv kommandoen igen uden at spørge brugeren.

## Noter

- Første kørsel: manuel login påkrævet (session bevares)
- I Codex Chrome-plugin-tilstand og Chrome Computer Use-tilstand skal du bruge brugerens eksisterende Chrome-session og ikke starte en separat CDP-profil
- CDP-scripts udfylder kun indhold i browseren som standard; brugeren skal gennemgå og udgive manuelt, medmindre `--submit` udtrykkeligt bruges
- Cross-platform: macOS, Linux, Windows

## Udvidelsessupport

Brugerdefinerede konfigurationer via EXTEND.md. Se **Præferencer**-sektionen for stier og understøttede muligheder.

## FAQ

### Hvilke typer indhold kan jeg poste til X med denne færdighed?

Du kan poste almindelige tekstopdateringer, billeder, videoer og længere X-artikler (tidligere kendt som Twitter-artikler) oprettet fra Markdown-filer. Den understøtter forskellige medietyper for omfattende deling af indhold.

### Understøtter denne færdighed X-artikler, og hvad er kravene?

Ja, den understøtter X-artikler fra Markdown. Du kan inkludere forsidebilleder og indholdsbilleder. Udgivelse af X-artikler kræver typisk et X Premium-abonnement.

### Hvilke forskellige browserkontrolympustilstande er tilgængelige?

Færdigheden tilbyder tre hovedtilstande: Codex Chrome Plugin-tilstand, Chrome Computer Use-tilstand og CDP Script-tilstand. Valget afhænger af dit miljø og specifikke krav, hvor Computer Use er den foretrukne standard.

### Hvordan installerer jeg færdigheden 'Post til X'?

Du kan installere færdigheden med kommandoen: \`npx skills add https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-post-to-x\`. Sørg for, at du har \`bun\` eller \`npx\` installeret.

### Er en manuel gennemgang påkrævet, inden opslag offentliggøres på X?

Som standard udfylder færdigheden indhold i browseren, og du skal manuelt gennemgå og offentliggøre. \`--submit\`-indstillingen til CDP-scripts bør kun bruges med eksplicit brugerbekræftelse til endelig offentliggørelse.

### Hvad skal jeg gøre, hvis jeg støder på en fejl 'Chrome debug-port ikke klar'?

Hvis denne fejl opstår i CDP-fallback-tilstand, skal du dræbe eksisterende Chrome CDP-instanser og prøve kommandoen igen. Færdigheden er designet til at forsøge dette automatisk.
