O que é o AT Protocol
O AT Protocol (Authenticated Transfer Protocol, ou ATProto) e um protocolo de rede social descentralizado criado pela empresa Bluesky Social. Foi desenvolvido originalmente com apoio de Jack Dorsey, cofundador do Twitter, como uma tentativa de criar uma alternativa aberta e descentralizada as redes sociais tradicionais.
A ideia central e simples mas poderosa: em vez de seus dados ficarem presos no servidor de uma empresa, o ATProto permite que você leve sua conta, seguidores, posts e histórico para qualquer plataforma compatível. E como ter um número de telefone que você pode levar de uma operadora para outra - só que para redes sociais.
O protocolo ganhou traction real em 2023 quando o Bluesky abriu o cadastro público e em 2024 quando explodiu em popularidade, chegando a mais de 20 milhões de usuários em novembro de 2024, impulsionado por migrações do X (antigo Twitter).
Como funciona o ATProto na prática
O ATProto e construido sobre alguns conceitos técnicos fundamentais que o diferenciam das redes sociais tradicionais:
DID (Decentralized Identifier): cada usuário tem um identificador único que não pertence a nenhuma empresa específica. Você pode usar o seu próprio domínio como handle (por exemplo, você.dev) em vez de ficar preso ao handle de uma plataforma.
PDS (Personal Data Server): e onde seus dados ficam armazenados. Pode ser o servidor do Bluesky, um servidor de terceiros ou até o seu próprio servidor. O protocolo garante que os dados sejam idênticos independente de onde estão hospedados.
Lexicons: são os esquemas que definem os tipos de dados que o protocolo entende - posts, perfis, likes, reposts. Qualquer desenvolvedor pode criar novos lexicons para novos tipos de interação.
Você pode usar seu próprio domínio como handle no Bluesky adicionando um arquivo .well-known/atproto-did na raiz do seu domínio. E uma forma elegante de verificar identidade sem depender de uma plataforma centralizada.
O fluxo básico e: você pública um post no Bluesky (ou em qualquer app ATProto). Esse post fica no seu PDS. O AppView (camada de indexação) coleta posts de todos os PDSs e os torna pesquisáveis. Qualquer cliente (Bluesky, Skylight, deck.blue, e outros) pode exibir esses dados.
Principais diferenciais do ATProto
O que torna o ATProto diferente de outras tentativas de descentralização?
- Portabilidade de conta: se o Bluesky fechar ou mudar suas políticas, você pode migrar sua conta inteira para outro servidor ATProto sem perder seguidores ou histórico de posts.
- Algoritmos escolhidos pelo usuário: diferente do Twitter/X que tem um algoritmo único e opaco, o ATProto permite que qualquer desenvolvedor crie e publique feeds alternativos. Você pode usar o feed cronológico, o algoritmo padrão do Bluesky, ou um feed customizado que filtra por tópico.
- Moderação descentralizada: existem provedores de moderação independentes (Ozone) que qualquer cliente pode adotar ou ignorar. Você tem mais controle sobre o que ver e o que não ver.
- Open source: o protocolo e todas as implementações de referência estão em código aberto no GitHub.
Como começar a construir no ATProto
Se você e desenvolvedor e quer explorar o ATProto, o ponto de entrada mais fácil e o SDK oficial em TypeScript:
npm install @atproto/apiCom ele você pode autenticar e interagir com a rede em poucas linhas:
import { BskyAgent } from "@atproto/api";
const agent = new BskyAgent({
service: "https://bsky.social"
});
await agent.login({
identifier: "seu.handle.bsky.social",
password: "sua-senha"
});
await agent.post({
text: "Meu primeiro post via API do ATProto!",
createdAt: new Date().toISOString()
});Para aplicações em produção, use App Passwords em vez da senha principal da conta. Crie em Configurações > Privacidade e segurança > Senhas de aplicativo no Bluesky.
Exemplo prático: criando um feed customizado
Uma das capacidades mais interessantes do ATProto para desenvolvedores e a criação de feeds algorítmicos próprios. Um feed generator e um servidor HTTP simples que o Bluesky consulta:
// Feed generator minimalista
// Responde ao endpoint /xrpc/app.bsky.feed.getFeedSkeleton
app.get("/xrpc/app.bsky.feed.getFeedSkeleton", async (req, res) => {
const posts = await buscarPostsDoMeuAlgoritmo();
res.json({
feed: posts.map(uri => ({ post: uri }))
});
});Após publicar seu feed generator, você o registra no próprio Bluesky como um novo feed. Qualquer usuário pode então adicionar e usar seu algoritmo. A comunidade já criou centenas de feeds especializados - de posts sobre programação a feeds de humor brasileiro.
Comparação: ATProto vs. ActivityPub (Mastodon)
ActivityPub e o outro grande protocolo de redes sociais descentralizadas, usado pelo Mastodon, Misskey e outros. A diferença principal e de arquitetura:
ActivityPub usa uma federação de servidores independentes. Cada servidor tem seus próprios usuários, regras e moderação. Você pode seguir alguém em outro servidor, mas migrar de servidor e complicado e nem sempre preserva seguidores.
ATProto separa armazenamento de dados (PDS) de indexação e exibição (AppView). Isso permite portabilidade de conta muito mais simples e permite que múltiplos clientes e algoritmos diferentes convivam na mesma rede de dados.
O ATProto e o ActivityPub não são mutualmente exclusivos. Já existem bridges que permitem seguir contas do Mastodon a partir do Bluesky e vice-versa. A web descentralizada esta convergindo gradualmente.
Pontos positivos e limitações
O que é genuinamente bom: a portabilidade de dados e real e funciona. O ecossistema de clientes e feeds alternativos esta crescendo. A API e bem documentada e o SDK e estável para uso em produção. Para desenvolvedores, e uma plataforma genuinamente aberta onde você pode construir coisas que não seriam possíveis no Twitter/X.
Limitações reais:
- Descentralização parcial na prática: mais de 90% dos usuários usam o PDS do próprio Bluesky. A promessa de descentralização só se realiza se as pessoas realmente migrarem para servidores alternativos.
- Escala incerta: o protocolo foi projetado para descentralização, mas a maioria do tráfego ainda passa pela infraestrutura do Bluesky. Como vai se comportar com escala real distribuída ainda e uma incógnita.
- Fragmentação de moderação: a moderação descentralizada e um ideal, mas na prática e mais complexa de implementar e pode criar inconsistências de experiência entre clientes.
Casos de uso reais para desenvolvedores
O que desenvolvedores brasileiros estão construindo em cima do ATProto?
Bots e automações: newsletters que postam automaticamente, bots de noticias tecnológicas, contas automatizadas de utilidade pública. A API e simples e a autenticação via App Password e segura para esse caso de uso.
Clientes alternativos: o deck.blue (cliente estilo TweetDeck), o Graysky (cliente mobile) e o Skylight são exemplos de clientes construidos sobre o ATProto. O ecossistema ainda tem espaço para inovação em UX.
Ferramentas de análise: como todos os dados são públicos e acessíveis via API, e possível construir ferramentas de análise de sentimento, tendências e grafos de conexão sem restrições de acesso.
Plataformas de nicho: o White Wind (editor de blog no ATProto) e o Frontpage (agregador de links estilo Hacker News) mostram que da para construir aplicações completas usando o protocolo como backend social.
Dicas e boas práticas
Para experimentar a API sem configurar um projeto completo, use o atproto.blue - e um playground web onde você testa endpoints do ATProto diretamente no browser.
Use cursors para paginação em todas as consultas. A API do ATProto usa paginação por cursor (não por página numerada) e sem isso você vai perder dados em coleções grandes.
O ATProto ainda esta evoluindo. Alguns endpoints e lexicons podem mudar entre versões. Monitore o repositório oficial no GitHub e o blog de desenvolvedores do Bluesky para não ser pego de surpresa por breaking changes.
Nunca faca scraping agressivo da API pública. O Bluesky tem rate limits e pode bloquear IPs que fazem muitas requisições. Use os firehose (fluxos de dados em tempo real) para coleta em escala em vez de polling de endpoints.
Vale a pena construir no ATProto?
Para desenvolvedores que querem explorar o futuro das redes sociais abertas, sim. O ATProto tem uma comunidade técnica ativa, documentação em crescimento e casos de uso reais já em produção. Não e um protocolo hipotético - e uma plataforma funcionando com milhões de usuários reais.
O ponto de entrada recomendado: crie uma conta no Bluesky, instale o SDK oficial (@atproto/api), e experimente criar um feed customizado. E a melhor forma de entender na prática o que o protocolo oferece e onde estão os limites reais.
Comentários
Deixar um comentárioVocê precisa ter uma conta no CuritibaBlog para comentar.