Nos últimos anos, o campo da programação assistida por IA tem visto avanços rápidos, com várias ferramentas de software surgindo uma após a outra. De GitHub Copilot a ChatGPT, Claude, Cursor e outros, você já pode ter experimentado algumas dessas ferramentas. Recentemente, esse campo recebeu um novo e significativo jogador: o Windsurf AI Editor. O Windsurf AI Editor visa proporcionar uma experiência mágica, semelhante à admiração que você sentiu ao usar o ChatGPT pela primeira vez. Este artigo mergulha nos vários aspectos do Windsurf AI Editor, incluindo suas principais características de produto, instruções de uso, exemplos do mundo real e práticas recomendadas.
O que é o Windsurf AI Editor e o que ele pode fazer?
Windsurf é um editor de código integrado com capacidades de IA, ou como seus fundadores descrevem, o primeiro IDE agente do mundo. Construído no editor de código VS Code de código aberto, o Windsurf AI Editor suporta todas as linguagens de programação que o VS Code suporta e é compatível com o ecossistema de plugins do VS Code. Ele utiliza grandes modelos como o GPT 4o da OpenAI e o Claude 3.5 Sonnet para fornecer suas capacidades de IA principais. Além disso, eles desenvolveram seus próprios modelos Cascade Base e Codeium Fast, oferecendo aos usuários uma variedade de escolhas.
As principais características do Windsurf incluem preenchimento automático de código, geração de código impulsionada por IA com profunda consciência de contexto e a capacidade de realizar operações automáticas de várias etapas, como um agente de IA, para resolver problemas complexos. A equipe fundadora espera que o Windsurf possa trabalhar perfeitamente com os desenvolvedores, como o Copilot, sem sobrepor-se a eles, ao mesmo tempo em que possui a capacidade de resolver problemas complexos independentemente, como um agente de IA. Eles referem-se a essa experiência como "Flows", visando proporcionar aos desenvolvedores uma experiência suave e contínua.
Principais Características
- Assistente AI Cascade: O Cascade possui capacidades de agente de IA, analisando e decompondo seus comandos automaticamente ao escanear o código do projeto para realizar tarefas complexas passo a passo.
- Preenchimento Automático: Prevê automaticamente o código que você está prestes a escrever e o completa com um único toque de tecla.
- Supercomplete: Fornece previsões conscientes de contexto e intenção que não apenas adicionam novo código, mas também oferecem sugestões de modificação consistentes para o código existente.
- Chat no Editor: Pode ser usado para explicar pequenos trechos de código, refatorar, gerar comentários ou documentação.
- Especificar Contexto: Você pode inserir
@
no Cascade para selecionar arquivos, diretórios ou blocos de código específicos como contexto para um controle mais preciso ao conversar com a IA. - Consciência Profunda de Contexto: O Windsurf incorpora anos de pesquisa da Codeium nesse campo, permitindo uma varredura e compreensão profundas do código para fornecer saídas e sugestões mais eficazes.
- Sugestões de Operação de Linha de Comando: Automaticamente sugere a execução de operações relacionadas na linha de comando. Por exemplo, se você pedir ao Windsurf para completar uma função que requer dependências de terceiros, ele modificará os arquivos relevantes e solicitará que você execute o comando para instalar as dependências, exigindo apenas um clique de confirmação de sua parte.
- Edição de Múltiplos Arquivos: Permite a modificação simultânea de vários arquivos, garantindo consistência nas modificações.
- CodeLenses: Exibe ações rápidas como Explicar, Refatorar, Adicionar Docstring na navegação de migalhas de pão na parte superior para execução fácil com um clique.
- Chat no Terminal: Use o recurso Chat na linha de comando para que a IA gere comandos prontos para execução, poupando-lhe o trabalho de escrevê-los ou usar motores de busca.
Visão Detalhada das Características
Visão Geral do Cascade
Cascade é o nome dado ao assistente de IA do Windsurf. Ele possui capacidades profundas de compreensão do código, capacidades avançadas de uso de ferramentas integradas e capacidades de sensoriamento de intenção do usuário em tempo real. Através dessas habilidades combinadas, o Cascade visa proporcionar aos desenvolvedores uma experiência natural e suave.
Clique no ícone do Cascade no canto superior direito da barra de menu do editor Windsurf para abrir a janela do Cascade, como mostrado abaixo.
O Cascade opera principalmente em dois modos: Modo Chat e Modo Escrita, como mostrado abaixo:
Modo Escrita
Modo Chat
Clique no ícone acima de Escrever/Conversar com o Cascade para alternar entre os dois modos. Você também pode clicar no botão de alternância abaixo da caixa de chat ou usar atalhos de teclado para alternar. (Ctrl + . para Windows, ⌘ + . para Mac)
No Modo Escrita, o Cascade pode realizar operações como modificar código, editar arquivos existentes e adicionar novos arquivos, adequado para tarefas relacionadas à escrita de código real.
No Modo Chat, o Cascade responde apenas na janela de chat sem tentar modificar arquivos diretamente, adequado para fazer perguntas não relacionadas ao código em si ou quando você não deseja que o Cascade modifique o código diretamente.
Consciência Profunda de Contexto do Cascade
As capacidades de consciência profunda de contexto do Cascade derivam da experiência de pesquisa acumulada ao longo dos anos pela equipe fundadora do Windsurf, Codeium, nesse campo. Através da consciência profunda de contexto, mesmo quando confrontado com grandes bases de código em ambientes de produção, o Cascade pode gerar resultados e sugestões com base no código relevante no projeto, em vez de confiar apenas em sua própria base de conhecimento.
Abaixo está um exemplo em vídeo. Do exemplo, podemos ver que o Cascade analisa as tarefas que enfrenta como um agente de IA e realiza operações passo a passo, identificando primeiro o conteúdo relacionado à tarefa atual no projeto e, em seguida, completando os requisitos passo a passo.
Sugestões Automáticas de Operação de Linha de Comando do Cascade
Durante o processo de escrita de código como um agente de IA com o Cascade, se for encontrado que certas operações de linha de comando precisam ser executadas no meio para continuar normalmente, o Cascade solicitará diretamente o comando a ser executado na janela de chat e solicitará sua permissão. Você só precisa clicar para confirmar a execução para permitir que o Cascade continue, e o Cascade lerá automaticamente os resultados obtidos após a execução e procederá com o próximo passo com base nos resultados.
Sensoriamento de Intenção em Tempo Real do Cascade
Geralmente, ao escrever código, não precisamos de assistência de IA 100% do tempo. Mais frequentemente, podemos escrever um pouco por conta própria, depois obter alguma ajuda da IA e, em seguida, completar alguma lógica por conta própria. Se as ferramentas de programação assistida por IA não forem otimizadas para essa situação, elas podem não fornecer melhores resultados devido à falta de contexto. O Windsurf equipou o Cascade com poderosas capacidades de raciocínio, combinando a análise profunda da intenção do usuário com base nas operações atuais. Sempre que precisar da ajuda do Cascade, ele pode sempre entender mais precisamente o que você deseja fazer. Isso pode poupar-lhe trabalho em muitos casos, eliminando a necessidade de dizer repetidamente à IA o que você acabou de fazer e o que deseja fazer a seguir. Claro, dar à IA requisitos mais claros é sempre bom, mas às vezes, se você pode poupar algum trabalho, não é melhor?
Edição Simultânea de Múltiplos Arquivos do Cascade
Para tarefas simples, escrever e modificar código em um único arquivo é frequentemente suficiente. No entanto, para tarefas mais complexas, múltiplos arquivos e vários tipos de arquivos geralmente precisam ser modificados. Para ferramentas de programação assistida por IA, não é apenas necessário saber quais arquivos modificar simultaneamente, mas também garantir que as modificações em diferentes arquivos sejam consistentes e mutuamente responsivas. O Cascade pode fazer isso bem com suas capacidades de consciência profunda de contexto e a habilidade de completar tarefas passo a passo como um agente de IA.
Preenchimento Automático
O recurso de preenchimento automático pode prever o código que você está prestes a escrever, não apenas prever código de linha única, mas também gerar grandes segmentos de código preditivo. Antes do nascimento do Windsurf, a Codeium acumulou vários anos de experiência nesse campo, e agora essa capacidade é diretamente incorporada no editor Windsurf.
Super Preenchimento Automático
Por que ter super preenchimento automático quando já existe preenchimento automático? Porque o preenchimento automático é um tipo de previsão "somente adição", ele só ajuda você a prever o código que está prestes a adicionar. O super preenchimento automático, por outro lado, pode prever modificações de código relacionadas enquanto você escreve ou modifica o código. Por exemplo, quando você muda o nome de um campo, o super preenchimento automático pode detectar automaticamente todos os lugares onde esse nome de variável é usado e sugerir modificações. Você só precisa pressionar a tecla Tab para aceitá-lo. O momento do super preenchimento automático é inteligentemente previsto pelo Windsurf com base no contexto e é acionado automaticamente quando certas condições são atendidas. Cenários comuns que o acionam incluem, além do exemplo acima, modificar definições de tipo, corrigir erros de ortografia e possivelmente vincular manipuladores de eventos a formulários.
Assistência de Chat no Editor
Você pode abrir uma janela de chat em linha em qualquer posição do editor diretamente através de um atalho de teclado (Ctrl + I para Windows, ⌘ + I para Mac).
Alternativamente, quando você seleciona um trecho de código, uma dica de bolha automática aparecerá ao lado do código selecionado.
Chat de IA na Linha de Comando
Além de usar a assistência de IA ao escrever código, você também pode deixar a IA gerar algumas operações de linha de comando esquecidas durante as operações de linha de comando, poupando-lhe o trabalho de procurar informações. No entanto, uma dica amigável: os comandos gerados por IA também podem ter falhas, portanto, certifique-se de confirmá-los antes de executá-los.
Code Lens
Na parte superior da barra de menu, há botões para operações comuns, como explicar código, refatorar e adicionar comentários de documentação, que podem ser executados com um clique.
Perguntas Frequentes
Como o Windsurf difere de outros editores de código de IA (como Cursor, Cognition)?
Todos são softwares de programação assistida por IA, mas há diferenças na forma do produto e na usabilidade.
Por exemplo, o Cognition (Devin) é independente do IDE e é mais inclinado a deixar a IA completar independentemente grandes tarefas complexas em vez de colaboração em tempo real com desenvolvedores.
Em comparação com o Cursor, o Composer do Cursor também pode realizar tarefas complexas como um agente de IA, mas o Cursor ainda não teve uma promoção em larga escala. Com base na experiência do autor, com os anos de acumulação da Codeium em compreensão profunda de contexto de código, o Windsurf pode ter uma vantagem ao lidar com tarefas complexas e grandes bases de código.
O Windsurf é gratuito?
A Codeium afirmou em seu site que esperam permitir que os usuários usem muitas das funcionalidades do Cascade gratuitamente, mas devido a razões de custo, capacidades mais abrangentes estarão disponíveis apenas mediante pagamento. No entanto, há um período experimental gratuito de duas semanas para novos usuários experimentarem primeiro.