CommunityRedacción y edicióngithub.com

publora/x-post

Úsalo cuando el usuario quiera publicar o programar publicaciones en X (Twitter) a través de Publora, incluyendo hilos divididos automáticamente al superar los 280 caracteres, hasta 4 imágenes o un video de hasta 140 segundos. X requiere un plan pago de Publora. No es para Threads ni Bluesky (cada uno tiene su propia skill).

¿Qué es x-post?

Esta skill permite a un agente de IA (como Claude Code, Cursor, Codex, OpenClaw) crear y programar publicaciones en X (Twitter) utilizando el servidor MCP de Publora. Soporta texto, hasta 4 imágenes, videos de hasta 140 segundos, y división automática de contenido largo en hilos. Es útil para automatizar la gestión de contenido en X, incluyendo programación futura, subida de medios y gestión de borradores. Requiere un plan Pro o Premium de Publora (el plan Starter no incluye X debido a costos de la API de Twitter). La skill se conecta mediante el protocolo MCP o mediante la API REST de Publora, proporcionando herramientas como `create_post`, `get_upload_url`, `complete_media`, `list_connections`, y funciones CRUD para publicaciones. El resumen ejecutivo es que esta skill transforma a un agente de IA en un gestor completo de contenido para X, manejando límites de caracteres, formatos de medios, programación y automatización de hilos.

Compatible con✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/publora/skills/tree/main/skills/x-post

Installed? Explore more Redacción y edición skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Publicación en X/Twitter

Crea y programa publicaciones en X (Twitter) usando el servidor MCP de Publora. Soporta publicaciones de texto, imágenes (hasta 4), videos y división automática en hilos para contenido extenso.

Requisitos previos

Planes: Requiere un plan de pago (los costos de la API de X se trasladan). Límites y precios actuales: publora.com/pricing.

Importante: X/Twitter NO está disponible en el plan gratuito Starter debido a los costos de la API de Twitter.

Primeros pasos

  1. Crear cuenta en publora.com/register
  2. Elegir plan Pro o Premium (X/Twitter requiere plan de pago)
  3. Conectar X/Twitter mediante OAuth en el Panel de Publora
  4. Obtener clave API en app.publora.com/dashboard/api
  5. Conectar tu agente al servidor MCP en https://mcp.publora.com, autenticando con Authorization: Bearer sk_YOUR_API_KEY. En Claude Code:
claude mcp add publora --transport http https://mcp.publora.com \
  --header "Authorization: Bearer sk_YOUR_API_KEY"

Claude Desktop, Cursor, Codex, OpenClaw y el conector de claude.ai necesitan cada uno un archivo de configuración o flujo diferente: consulta configuración del cliente para la ruta exacta y el fragmento de código.

Alternativa con API REST

Si MCP no está disponible, usa la API REST directamente:

URL base: https://api.publora.com/api/v1

Autenticación: encabezado x-publora-key

# Obtener plataformas conectadas
curl -X GET "https://api.publora.com/api/v1/platform-connections" \
  -H "x-publora-key: sk_your_api_key"

# Crear una publicación
curl -X POST "https://api.publora.com/api/v1/create-post" \
  -H "x-publora-key: sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": ["twitter-123456789"],
    "content": "El contenido de tu tweet",
    "scheduledTime": "2026-03-25T10:00:00Z"
  }'

Formato del ID de plataforma: twitter-{id} (ej., twitter-123456789)

📖 Documentación: docs.publora.com

Límites de la plataforma

CaracterísticaLímite de APINotas
Caracteres280Los emojis cuentan como 2 caracteres
ImágenesHasta 4Se convierten automáticamente a PNG (ancho máximo 1000 px)
Duración del video2 min 20 s (140 s)Publora valida videos de X en 140 s
Tamaño del video512 MBFormatos MP4, MOV
HilosAutomáticoContenido que supera los 280 caracteres se divide con marcadores (1/N)

Conteo de caracteres

X tiene reglas específicas de conteo de caracteres que Publora maneja automáticamente:

  • Caracteres estándar = 1
  • Emojis = 2 caracteres
  • URLs cuentan por su longitud literal
  • Los marcadores de hilo reservan 10 caracteres por tweet

Hilos automáticos

Cuando el contenido supera los 280 caracteres, Publora crea automáticamente un hilo conectado:

  1. El contenido se divide primero por saltos de párrafo, luego por límites de oraciones y finalmente por límites de palabras
  2. Cada parte se numera con el formato (1/N), (2/N)
  3. Los tweets se conectan mediante el parámetro reply_to_id de X

Saltos de hilo manuales

Usa --- en una línea aparte para forzar un salto de hilo:

Este es mi primer tweet del hilo.

---

Este es mi segundo tweet del hilo.

---

¡Y este es mi tercer tweet!

Herramientas disponibles

create_post

Crea una nueva publicación o hilo en X/Twitter.

Parámetros:

  • platforms: Arreglo con tu ID de conexión de X (ej., ["twitter-12345678"])
  • content: Texto de la publicación (se convierte automáticamente en hilo si supera los 280 caracteres)
  • scheduledTime: Fecha y hora UTC en formato ISO 8601. Opcional: si se omite, la publicación se crea como borrador. Envía una hora futura para programarla. Una hora con cinco o más minutos en el pasado se rechaza con SCHEDULED_TIME_IN_PAST; para publicación inmediata usa la hora actual más un minuto.
  • mediaUrls: Hasta 10 URLs públicas https de imágenes o videos. Publora las descarga del lado del servidor y las adjunta antes de la validación, por lo que los medios y la programación se realizan en una sola llamada. Esta es la alternativa de una sola llamada al flujo de borrador seguido de get_upload_url y luego complete_media. La ingesta tiene un límite de 60 URLs por hora.

get_upload_url

Obtiene una URL prefirmada para subir archivos multimedia.

Parámetros:

  • postGroupId: ID de la publicación a la que se adjuntará el archivo multimedia
  • fileName: Nombre del archivo (ej., "image.png", "video.mp4")
  • contentType: image/png, image/jpeg, video/mp4
  • type: "image" o "video"

complete_media

Finaliza un archivo subido mediante get_upload_url, después de que la subida PUT prefirmada se haya completado con éxito. Es opcional, porque la programación también finaliza los archivos multimedia pendientes, pero llamarlo antes permite detectar errores de formato y prueba antes de publicar. No es necesario para archivos multimedia adjuntos con mediaUrls.

Parámetros:

  • mediaId: el ID devuelto por get_upload_url

list_connections

Lista tus cuentas conectadas con sus ID de plataforma. Llama a esto primero y copia los ID textualmente; nunca son adivinables.

list_posts / get_post / update_post / delete_post

Gestiona publicaciones programadas y borradores. update_post también modifica content y platforms en una publicación en borrador o programada, por lo que corregir un error tipográfico o reorientar el destino ya no implica eliminar y volver a crear. delete_media y prune_media_reference limpian los archivos subidos.

Ejemplos

Tweet simple

Publica esto en X:
"¡Acabamos de publicar nuestra nueva documentación de API. Échale un vistazo!"

Tweet con imágenes

Publica esto en Twitter con capturas de pantalla del nuevo panel:
"Antes y después de nuestro rediseño. ¿Qué opinas?"

Nota: Se permiten hasta 4 imágenes. Todas las imágenes se convierten automáticamente a PNG.

Hilo largo

Crea un hilo de Twitter:
"Hilo: 5 lecciones de construir nuestra startup

---

1. Lanza pronto, itera rápido. Lanzamos con un MVP con errores y mejoramos basándonos en comentarios reales.

---

2. Habla con los usuarios a diario. Nuestras mejores funciones surgieron de conversaciones con clientes.

---

3. El enfoque supera las funciones. Cancelamos 3 productos para centrarnos en el que funcionaba."

Tweet programado

Programa esto para mañana a las 9 AM:
"Motivación de lunes: Empieza antes de estar listo."

Restricciones importantes

  1. Plan Pro requerido: X/Twitter está excluido del plan gratuito Starter debido a los costos de la API de Twitter.

  2. Límite de video de 140 segundos: Publora valida videos de X en 2 minutos 20 segundos (140 segundos). Los videos más largos fallan la validación.

  3. Conversión automática de imágenes: Todas las imágenes se convierten a PNG (ancho máximo de 1000 px) antes de subirlas. Los GIF animados pierden la animación.

  4. Sin mezcla de imagen y video: Un tweet puede tener imágenes O video, no ambos.

  5. Medios solo en el primer tweet: En hilos, las imágenes/video se adjuntan solo al primer tweet.

Mejores prácticas

Contenido

  1. Gancho en la primera línea: La mayor parte de la interacción ocurre en el primer tweet
  2. Longitud óptima del hilo: De 3 a 7 tweets para la mejor interacción
  3. Conciencia de emojis: Recuerda que los emojis cuentan como 2 caracteres

Momento

  • Mejores horas: 8-10 AM, 12-1 PM, 5-6 PM en la zona horaria objetivo
  • Frecuencia: 3-5 tweets por día para crecimiento
  • Hilos: Publica por la mañana para máxima visibilidad

Interacción

  • Responde a los comentarios durante la primera hora
  • Cita tus propios hilos para mayor visibilidad
  • Usa hashtags relevantes (1-2 por tweet)

Solución de problemas

ErrorCausaSolución
"X/Twitter requiere plan Pro"Usando plan StarterActualiza a Pro en publora.com/settings
"Contenido demasiado largo"Más de 280 caracteres y falló la creación del hiloAgrega saltos manuales ---
"Video demasiado largo"Más de 140 segundosRecorta el video a menos de 2 min 20 s
"Demasiadas imágenes"Más de 4 imágenesReduce a 4 o menos
"Límite de velocidad superado"Límite de API de X alcanzadoEspera y vuelve a intentar

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

publora/bluesky-post

Use when the user wants to post or schedule to Bluesky through Publora. Handles the 300-character cap, auto-detected hashtags and links, up to 4 images, and videos. Alt text cannot be set through the API. Needs a Bluesky app password, never the main password. Not for Mastodon (use social-post).

publora/instagram-post

Use when the user wants to post or schedule to Instagram through Publora: a single image, a 2-10 image carousel, a Reel or a Story. Requires a Business account and an image or video; text-only posts are rejected by the API. Not for Threads (use threads-post).

publora/linkedin-analytics

Analyze LinkedIn performance and manage engagement through Publora. Use when the user asks how a LinkedIn post or account performed (impressions, reach, reactions, comments, reshares, follower growth) or wants to react, comment, reshare or resolve an @mention. Statistics run over the REST API, engagement over MCP tools. Not for creating posts (use linkedin-post).

publora/linkedin-post

Use when the user wants to publish or schedule a LinkedIn post through Publora: text, a multi-image grid, a video, a PDF document, or @mentions. Not for analytics, reactions, comments or reshares (use linkedin-analytics), and not for other platforms.

publora/social-post

Use when the user wants to post or schedule to YouTube, a Facebook Page or Mastodon through Publora. YouTube needs a video on every post, Facebook publishes to Pages only, Mastodon caps at 500 characters. Not for the platforms that have their own skill.

publora/telegram-post

Use when the user wants to post or schedule to a Telegram channel or group through Publora, using a bot. Covers Telegram markdown, silent delivery, link previews and forward protection. Bot API caps media captions at 1,024 characters and videos at 50 MB. Not for other platforms (each has its own skill).

publora/threads-post

Create and schedule Threads posts with image carousels and reply control via Publora MCP. Use when the user wants to post to Meta's Threads. Multi-part threading is currently disabled by the platform, so long content stays a single post. Not for Instagram (use instagram-post) or X threads (use x-post).

publora/tiktok-post

Use when the user wants to upload or schedule a TikTok video through Publora, with privacy, comment, duet, stitch and commercial-disclosure settings. Video runs 3 seconds to 10 minutes at 23+ FPS; carousels take up to 35 images. Unaudited apps can publish private videos only. Not for Reels (use instagram-post).

Skills relacionados