Twitter CLI: Herramienta Prioritaria para Terminal en X/Twitter Sin Claves API
CLI de Twitter: Una Herramienta "Terminal-First" para X/Twitter sin Claves API
Introducción
En una era donde las plataformas de redes sociales cambian frecuentemente sus políticas de API y requisitos de acceso, tener herramientas fiables que funcionen independientemente de las APIs oficiales se vuelve cada vez más valioso. Presentamos twitter-cli, una interfaz de línea de comandos de código abierto que proporciona funcionalidad completa de Twitter/X directamente desde tu terminal, sin necesidad de claves API oficiales.
Desarrollada como un paquete de Python, esta herramienta representa una solución práctica para desarrolladores, creadores de contenido, investigadores y agentes de IA que necesitan acceso programático a datos y funcionalidades de Twitter.
Características Clave
Capacidades de Lectura
- Acceso a Timeline: Obtén los feeds "Para ti" y "Siguiendo" con filtros personalizables
- Gestión de Marcadores: Lista y gestiona tweets guardados de tu cuenta
- Búsqueda Avanzada: Encuentra tweets por palabra clave con soporte para las pestañas Principales/Últimos/Fotos/Videos
- Detalles de Tweet: Ve tweets individuales junto con sus hilos de respuesta completos
- Perfiles de Usuario: Accede a información del usuario, tweets, me gusta, seguidores y listas de seguidos
- Artículos de Twitter: Obtén artículos largos de Twitter y expórtalos como Markdown
- Timelines de Listas: Recupera tweets de Listas de Twitter específicas
Operaciones de Escritura
- Creación de Publicaciones: Crea nuevos tweets y respuestas con adjuntos de imagen opcionales (hasta 4 imágenes)
- Citar Tweets: Comparte tweets con comentarios e imágenes
- Gestión de Contenido: Elimina tus propios tweets, gestiona me gusta/retweets y maneja marcadores
- Salida Estructurada: Todas las operaciones de escritura soportan salida explícita en JSON/YAML para scripting
Autenticación y Anti-Detección
A diferencia de los bots tradicionales de Twitter que dependen de claves API oficiales, twitter-cli utiliza un ingenioso enfoque de autenticación:
- Extracción de Cookies del Navegador: Extrae automáticamente cookies de Twitter de los navegadores Arc, Chrome, Edge, Firefox o Brave
- Variables de Entorno: Como último recurso, utiliza las variables TWITTER_AUTH_TOKEN y TWITTER_CT0
- Funciones Anti-Detección:
- Suplantación de huella digital TLS usando curl_cffi con coincidencia dinámica de versión de Chrome
- Jitter en el tiempo de las solicitudes para evitar la detección de patrones
- Retrasos en las operaciones de escritura (1.5–4s aleatorios) para mitigar los límites de tasa
- Generación de encabezado x-client-transaction-id
- Soporte de Proxy: Enruta las solicitudes a través de proxies HTTP o SOCKS5 mediante la variable de entorno TWITTER_PROXY
Instalación y Configuración
Instalación Recomendada
# Usando la herramienta uv (rápida, aislada)
uv tool install twitter-cli
# Usando pipx
pipx install twitter-cli
Ejemplos de Inicio Rápido
# Obtener timeline de inicio (Para ti)
twitter feed
# Obtener timeline de seguidos
twitter feed -t following
# Buscar contenido específico
twitter search "Claude Code"
twitter search "AI agent" -t Latest --max 50
# Ver detalles de un tweet
twitter tweet 1234567890
twitter tweet https://x.com/user/status/1234567890
# Publicar un nuevo tweet
twitter post "¡Hola desde twitter-cli!"
# Publicar con imágenes
twitter post "Galería" -i a.png -i b.jpg -i c.webp
Configuración y Personalización
Crea un archivo config.yaml en tu directorio de trabajo para personalizar el comportamiento:
fetch:
count: 50
filter:
mode: "topN" # "topN" | "score" | "all"
topN: 20
minScore: 50
lang: []
excludeRetweets: false
weights:
likes: 1.0
retweets: 3.0
replies: 2.0
bookmarks: 5.0
views_log: 0.5
rateLimit:
requestDelay: 2.5
maxRetries: 3
retryBaseDelay: 5.0
maxCount: 200
El sistema de puntuación te permite filtrar contenido basado en métricas de interacción, con pesos configurables para diferentes tipos de interacciones.
Integración con Agentes de IA
Una de las características destacadas de twitter-cli es su excelente soporte para flujos de trabajo de agentes de IA:
Formatos de Salida Estructurada
# Salida YAML (recomendada para agentes de IA)
twitter feed --yaml
# Salida JSON
twitter feed --json
# Exportar a archivo para procesamiento
twitter feed --output tweets.json
Integración de Habilidades
# Instalar como habilidad de agente de IA
npx skills add jackwener/twitter-cli
La herramienta viene con un archivo SKILL.md diseñado específicamente para la ejecución de agentes de IA, lo que facilita la incorporación de la funcionalidad de Twitter en flujos de trabajo automatizados.
Mejores Prácticas para un Uso Seguro
Para evitar restricciones o baneos de cuenta, sigue estas directrices:
- Usa un Proxy: Configura
TWITTER_PROXYpara evitar la exposición directa de IP - Controla el Volumen de Solicitudes: Usa
--max 20en lugar de--max 500 - Evita Reinicios Frecuentes: Cada inicio recupera x.com para inicializar los encabezados anti-detección
- Usa la Extracción de Cookies del Navegador: Proporciona una huella digital completa de cookies para patrones de tráfico más naturales
- Prefiere IPs Residenciales: Las IPs de centros de datos son más propensas a activar límites de tasa
Solución de Problemas Comunes
Problemas de Autenticación
- No se encontraron cookies de Twitter: Asegúrate de haber iniciado sesión en x.com en un navegador compatible
- Cookie expirada o inválida: Vuelve a iniciar sesión en x.com y reintenta
- Problemas con el Keychain de macOS: Desbloquea el keychain o modifica los controles de acceso para tu aplicación de terminal
Errores de API
- Error 404 de la API de Twitter: Generalmente indica rotación del ID de consulta GraphQL; simplemente reintenta el comando
- Limitación de tasa: La herramienta incluye reintentos automáticos con retroceso exponencial
Problemas Específicos de Windows
- Captura de salida de tubería/subproceso: Este es un problema de ConPTY con Windows Terminal. Usa Git Bash con
"windowsEnableConpty": falseen la configuración del terminal
Estructura del Proyecto y Desarrollo
La base de código está bien organizada y se mantiene activamente:
twitter_cli/
├── cli.py # Interfaz principal de línea de comandos
├── client.py # Cliente HTTP con anti-detección
├── graphql.py # Manejo de consultas GraphQL
├── parser.py # Lógica de análisis de datos
├── auth.py # Gestión de autenticación
├── config.py # Manejo de configuración
├── filter.py # Algoritmos de filtrado de contenido
└── models.py # Modelos de datos
Para contribuir o modificar:
# Clonar el repositorio
git clone [email protected]:jackwener/twitter-cli.git
cd twitter-cli
# Instalar dependencias de desarrollo
uv sync --extra dev
# Ejecutar pruebas
uv run pytest -q
Herramientas Relacionadas
El desarrollador mantiene varias herramientas CLI similares para otras plataformas:
- bilibili-cli: Videos, usuarios, búsqueda y feeds de Bilibili
- discord-cli: Sincronización local, búsqueda y exportación de Discord
- tg-cli: Sincronización local, búsqueda y exportación de Telegram
- xiaohongshu-cli: Notas y flujos de trabajo de cuentas de Xiaohongshu (小红书)
Conclusión
twitter-cli representa un enfoque sofisticado para la automatización de Twitter que evita las limitaciones de las APIs oficiales manteniendo una funcionalidad robusta. Su diseño "terminal-first" lo hace ideal para:
- Desarrolladores que necesitan acceso programático a Twitter
- Investigadores que recopilan datos de redes sociales
- Creadores de Contenido que gestionan múltiples cuentas
- Agentes de IA que requieren datos estructurados de Twitter
- Usuarios Avanzados que prefieren flujos de trabajo de terminal
Con su naturaleza de código abierto, mantenimiento activo y diseño reflexivo en torno a medidas anti-detección, twitter-cli ofrece una herramienta valiosa para cualquiera que necesite acceso fiable y flexible a la funcionalidad de Twitter/X sin las restricciones de los programas de API oficiales.
Repositorio: https://github.com/jackwener/twitter-cli Licencia: Apache-2.0 Estrellas: 2.4k+ Última Actualización: Abril de 2026