Cursor, Copilot e os IDEs Aumentados
- ⬜🗺️ O Panorama dos Coding Agents(Ferramentas de IA para Código)
Recomendamos completar os pré-requisitos antes de seguir, mas nada te impede de continuar.
Para muitos desenvolvedores, o editor de código é a extensão do pensamento. Cursor e GitHub Copilot apostam nessa premissa: em vez de mover o desenvolvedor para um terminal ou interface de chat, eles trazem a IA diretamente para onde o código vive.
Cursor: um fork, não um plugin
| Capacidade | Extensão do editor | Bifurcação do editor |
|---|---|---|
| Inserir texto e abrir painéis | Sim | Sim |
| Alterar a renderização do diff | Não — a API não expõe | Sim |
| Mudar o comportamento do autocompletar por dentro | Não | Sim |
| Acompanhar as atualizações do original | Automático | Fica atrás, e algumas extensões estranham |
| Custo de manutenção | Baixo | Alto — é um editor inteiro para manter |
Este detalhe técnico muda tudo. O Cursor não é uma extensão do VSCode — é um fork do VSCode (que é open-source). A diferença prática:
Extensão do VSCode
Acessa a API pública do VSCode. Pode inserir texto, abrir painéis laterais, reagir a eventos de arquivo. Mas não pode modificar o motor de renderização, o sistema de syntax highlighting em tempo real, ou a lógica interna do editor.
Fork do VSCode (Cursor)
Acesso total ao código-fonte. Pode modificar como o autocomplete funciona internamente, como o cursor se move, como diffs são calculados e renderizados. Isso permite experiências como o "ghost text" multiling e o diff inline que aparece antes de você aceitar.
A desvantagem: o Cursor fica levemente atrás nas atualizações do VSCode e algumas extensões têm comportamento estranho por incompatibilidades com o fork.
Os modos do Cursor
O Cursor tem três formas distintas de interagir com IA, cada uma com filosofia diferente:
Como o Cursor indexa o seu repositório
Para incluir contexto relevante sem estourar a janela, o Cursor usa embeddings semânticos:
// Indexação do Cursor
1. Divide cada arquivo em chunks (~200-500 tokens)
2. Gera embedding para cada chunk
(vetor numérico de ~1500 dimensões)
3. Armazena localmente num banco vetorial
// Quando você pergunta ou edita:
4. Sua query vira embedding
5. Busca top-K chunks por cosine similarity
6. Injeta no prompt do LLMIsso explica por que o Cursor frequentemente acerta quando você diz "usa o mesmo padrão que a função X" — ele encontrou X semanticamente.
Mas há trade-off. Comparação honesta entre estratégias de contexto:
Edit format: o detalhe que muda 20+ pontos em benchmark
Essa é a evidência mais contraintuitiva de toda essa trilha. O Aider benchmark (Paul Gauthier, mantenedor do Aider) comparou o mesmo LLM pedindo para editar código em formatos diferentes:
// Mesmo modelo (GPT-4), mesma tarefa, edit format diferente:
Whole-file → o LLM reescreve o arquivo inteiro
Alto custo de tokens, alto erro rate
Search/Replace blocks → "encontre esse bloco e troque por esse"
Formato que Cursor Cmd+K e Claude Code Edit usam
Melhor em muitos modelos
Unified diff → formato git diff clássico
Modelos antigos erram muito o offset de linha
udiff-simple → diff sem linha de contexto extra
Formato otimizado do Aider
// Swing medido entre o melhor e o pior formato
// para o MESMO modelo: 20+ pontos percentuais.Por isso Cursor, Copilot, Cursor Agent e Claude Code investem tanto em escolher o formato certo por modelo. Não é cosmético — é a diferença entre o agente acertar 40% ou 65% das edições.
A lição: quando escolher um scaffold, preste atenção ao formato de edição que ele usa para o modelo que você está rodando. Scaffolds model-agnostic têm que escolher um denominador comum — e quase sempre isso custa pontos em benchmark contra scaffolds otimizados pelo fornecedor do modelo (Claude Code para Claude, Codex para GPT).
GitHub Copilot: da completions à ambição de agente
O Copilot original (2021) era puramente autocomplete. Em 2024-2025, a Microsoft/GitHub expandiu agressivamente:
Ser um fork do editor em vez de uma extensão dá qual capacidade concreta?
O modelo do Copilot: não é fixo
Uma mudança estratégica importante em 2024: o GitHub Copilot se tornou model-agnostic. Em vez de só o modelo da OpenAI, você pode escolher:
Isso transforma o Copilot em um harness agnóstico de modelo — o que importa é a integração com o GitHub (issues, PRs, código) e o IDE, não qual LLM roda por baixo.
Copilot Enterprise: o diferencial corporativo
Para times corporativos, o Copilot Enterprise oferece algo que as outras ferramentas não têm (ainda): a possibilidade de incluir bases de código privadas no índice.
Em vez de só indexar o repositório atual, o Enterprise pode indexar toda a organização no GitHub — incluindo bibliotecas internas, padrões de código da empresa, APIs privadas. O modelo aprende o vocabulário específico do seu time.
Isso é o que justifica o preço premium do Enterprise. Para times com muita propriedade intelectual em código próprio, um modelo que "conhece" a base de código histórica da empresa é significativamente mais útil que um modelo genérico.
IDE-first vs terminal-first: a escolha filosófica
Não há certo e errado — há diferentes fluxos de trabalho. A tabela honesta:
No próximo módulo: Amazon Q e Kiro — a aposta da AWS no mercado de coding agents, com duas filosofias distintas dentro da mesma empresa.
Perguntas frequentes
❓ Qual a diferença de filosofia entre agente de terminal e IDE com IA?
❓ IDE com IA é melhor para quem está aprendendo?
❓ Vale pagar duas ferramentas?
Fixando
O mesmo modelo, na mesma tarefa, muda mais de 20 pontos conforme o formato de edição pedido. Por quê?
Qual é o efeito de um harness ser agnóstico de modelo, segundo o módulo?
Terminou de ler?
Marcar como concluído registra o XP, mantém sua sequência e coloca 3 cartas deste módulo na fila de revisão espaçada.
Próximos passos sugeridos
Temas deste módulo
Discussão
Carregando comentários…