Pular para o conteúdo
Skillpedia
Redes sociais280 mil · #312

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

https://github.com/affaan-m/ECC/blob/main/skills/x-api/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/affaan-m/ECC/blob/main/skills/x-api/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-api

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/affaan-m/ECC/main/skills/x-api/SKILL.md -o SKILL.md
Conteú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-remaining e x-rate-limit-reset em 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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas