x-api
Faz seu agente interagir com o X (antigo Twitter) para postar, ler e analisar dados. É útil quando você precisa automatizar tarefas na plataforma.
O que ela faz
Esta ferramenta permite que você interaja com o X (antigo Twitter) usando código. Você pode postar tweets, ler o que as pessoas estão falando, procurar por assuntos e até ver estatísticas.
Quando usar
- ✓Quando você quer postar algo no X automaticamente.
- ✓Para buscar informações ou tendências no X.
- ✓Se você está criando um programa que se conecta ao X.
Exemplo do que pedir para a IA
“Quero postar um tweet dizendo 'Olá, mundo!' no X.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta usa códigos especiais (tokens) para se conectar ao X. Dependendo do que você quer fazer (ler ou escrever), ela usa um tipo diferente de conexão para garantir que você tem permissão.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add affaan-m/ECC --skill x-apiOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/affaan-m/ECC/main/skills/x-api/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
API X
Habilidade propensa a desvios. Endpoints da API X, níveis de acesso, cotas e permissões de escrita mudam frequentemente. Verifique a documentação atual do desenvolvedor e o acesso à conta antes de citar limites de taxa ou implementar um fluxo de postagem/pesquisa.
Interação programática com o X (Twitter) para postagem, leitura, pesquisa e análise.
Quando Ativar
- O usuário quer postar tweets ou threads programaticamente
- Ler linha do tempo, menções ou dados do usuário do X
- Pesquisar no X por conteúdo, tendências ou conversas
- Construir integrações ou bots do X
- Análise e rastreamento de engajamento
- O usuário diz "postar no X", "tweetar", "API X" ou "API Twitter"
Autenticação
Token de Portador OAuth 2.0 (Somente Aplicativo)
Melhor para: operações com muita leitura, pesquisa, dados públicos.
# Environment setup
export X_BEARER_TOKEN="your-bearer-token"
import os
import requests
bearer = os.environ["X_BEARER_TOKEN"]
headers = {"Authorization": f"Bearer {bearer}"}
# Search recent tweets
resp = requests.get(
"https://api.x.com/2/tweets/search/recent",
headers=headers,
params={"query": "claude code", "max_results": 10}
)
tweets = resp.json()
OAuth 1.0a (Contexto do Usuário)
Necessário para: postar tweets, gerenciar conta, DMs e qualquer fluxo de escrita.
# Environment setup — source before use
export X_CONSUMER_KEY="your-consumer-key"
export X_CONSUMER_SECRET="your-consumer-secret"
export X_ACCESS_TOKEN="your-access-token"
export X_ACCESS_TOKEN_SECRET="your-access-token-secret"
Aliases legados como X_API_KEY, X_API_SECRET e X_ACCESS_SECRET podem existir em configurações mais antigas. Prefira os nomes X_CONSUMER_* e X_ACCESS_TOKEN_SECRET ao documentar ou configurar novos fluxos.
import os
from requests_oauthlib import OAuth1Session
oauth = OAuth1Session(
os.environ["X_CONSUMER_KEY"],
client_secret=os.environ["X_CONSUMER_SECRET"],
resource_owner_key=os.environ["X_ACCESS_TOKEN"],
resource_owner_secret=os.environ["X_ACCESS_TOKEN_SECRET"],
)
Operações Principais
Postar um Tweet
resp = oauth.post(
"https://api.x.com/2/tweets",
json={"text": "Hello from Claude Code"}
)
resp.raise_for_status()
tweet_id = resp.json()["data"]["id"]
Postar um Thread
def post_thread(oauth, tweets: list[str]) -> list[str]:
ids = []
reply_to = None
for text in tweets:
payload = {"text": text}
if reply_to:
payload["reply"] = {"in_reply_to_tweet_id": reply_to}
resp = oauth.post("https://api.x.com/2/tweets", json=payload)
tweet_id = resp.json()["data"]["id"]
ids.append(tweet_id)
reply_to = tweet_id
return ids
Ler Linha do Tempo do Usuário
resp = requests.get(
f"https://api.x.com/2/users/{user_id}/tweets",
headers=headers,
params={
"max_results": 10,
"tweet.fields": "created_at,public_metrics",
}
)
Pesquisar Tweets
resp = requests.get(
"https://api.x.com/2/tweets/search/recent",
headers=headers,
params={
"query": "from:affaanmustafa -is:retweet",
"max_results": 10,
"tweet.fields": "public_metrics,created_at",
}
)
Puxar Posts Originais Recentes para Modelagem de Voz
resp = requests.get(
"https://api.x.com/2/tweets/search/recent",
headers=headers,
params={
"query": "from:affaanmustafa -is:retweet -is:reply",
"max_results": 25,
"tweet.fields": "created_at,public_metrics",
}
)
voice_samples = resp.json()
Obter Usuário por Nome de Usuário
resp = requests.get(
"https://api.x.com/2/users/by/username/affaanmustafa",
headers=headers,
params={"user.fields": "public_metrics,description,created_at"}
)
Fazer Upload de Mídia e Postar
# Media upload uses v1.1 endpoint
# Step 1: Upload media
media_resp = oauth.post(
"https://upload.twitter.com/1.1/media/upload.json",
files={"media": open("image.png", "rb")}
)
media_id = media_resp.json()["media_id_string"]
# Step 2: Post with media
resp = oauth.post(
"https://api.x.com/2/tweets",
json={"text": "Check this out", "media": {"media_ids": [media_id]}}
)
Limites de Taxa
Os limites de taxa da API X variam por endpoint, método de autenticação e nível da conta, e mudam com o tempo. Sempre:
- Verifique a documentação atual do desenvolvedor X antes de codificar suposições
- Leia os cabeçalhos
x-rate-limit-remainingex-rate-limit-resetem tempo de execução - Faça um backoff automático em vez de depender de tabelas estáticas no código
…
Perguntas frequentes
O que são 'tokens'?
Tokens são como senhas secretas que permitem que programas se conectem ao X em seu nome, sem que você precise digitar sua senha toda hora.
Por que o texto diz 'Drift-prone skill'?
Significa que as regras e como o X funciona mudam com frequência. É importante sempre verificar as informações mais recentes no site oficial do X para desenvolvedores.
Posso postar imagens ou vídeos?
Sim, a ferramenta permite que você envie mídias (como imagens) para serem postadas junto com seus tweets.
Detalhes
Descrição original do autor
X/Twitter API integration for posting tweets, threads, reading timelines, search, and analytics. Covers OAuth auth patterns, rate limits, and platform-native content posting. Use when the user wants to interact with X programmatically.
repo: affaan-m/ECC
Popularidade
- Estrelas no GitHub
- 280 mil
- Posição no ranking
- #312
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
accessibility
Ajuda seu agente a criar interfaces que todos possam usar. Garante que sites e aplicativos funcionem bem para pessoas com deficiência, como cegos ou com mobilidade reduzida.
affaan-m/ECC
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC
Skills parecidas
content-calendar
Ajuda seu agente a criar um calendário de conteúdo. Ele mapeia metas da empresa para tópicos que podem ser publicados, definindo quem é o responsável e o status.
paperclipai/paperclip
html-ppt-zhangzara-coral
Faz seu agente planejar campanhas de crescimento de comunidade em plataformas como GitHub e Discord. Detalha o conteúdo e as métricas para engajar usuários.
nexu-io/open-design
last30days
Pesquisa tendências recentes e o que as pessoas estão dizendo nas redes sociais. Útil para entender o sentimento atual e reações da comunidade.
nexu-io/open-design