O Windsurf atende a uma variedade de casos de uso em alto nível. No entanto, observamos que alguns são mais comuns do que outros, especialmente entre nossos clientes Enterprise em suas bases de código de produção.

Geração de código

Orientação: O Windsurf funciona muito bem para este caso de uso. Recursos do Windsurf incluem sugestões de uma linha, de múltiplas linhas e preenchimento no meio (FIM).Boas práticas: Garantir o uso de Next Completion (⌥ + ]), Context Pinning, @ Mentions e Custom Context proporcionará os melhores resultados.
Orientação: O Windsurf funciona muito bem para este caso de uso. Recursos do Windsurf incluem sugestões de uma linha, de múltiplas linhas e preenchimento no meio (FIM).Boas práticas: Garantir o uso de Next Completion (⌥ + ]), Context Pinning, @ Mentions e Custom Context proporcionará os melhores resultados.
Orientação: O Windsurf funciona muito bem para este caso de uso. Recursos do Windsurf incluem sugestões de uma linha, de múltiplas linhas e preenchimento no meio (FIM).Boas práticas: Garantir o uso de Next Completion (⌥ + ]), Context Pinning, @ Mentions e Custom Context proporcionará os melhores resultados.

Geração de testes unitários

Orientações: O uso básico do Windsurf para gerar testes unitários deve produzir de forma confiável 60–70% dos testes. A cobertura de casos-limite será tão boa quanto a habilidade de quem estiver fazendo os prompts para o modelo de IA.Boas práticas: Use @menções. Siga as boas práticas de Prompt Engineering. Exemplos:Escreva um teste unitário para @function-name que cubra todos os casos-limite para X e Y (por exemplo, domínio de e-mail).Use @testing-utility-class para escrever um teste unitário para @function-name.
Orientações: Bom para casos de baixo esforço. Para especificações de API muito específicas ou bibliotecas internas, o Windsurf pode não conhecer bem o suficiente as particularidades para garantir a qualidade dos dados de exemplo gerados.Boas práticas: Seja explícito sobre a interface esperada. Considere a complexidade da tarefa (e se uma chamada única ao LLM será suficiente para resolvê-la).

Comentários internos no código

Orientação: O Windsurf funciona bem para este caso de uso. Use Windsurf Command ou Windsurf Chat para gerar comentários inline e descrições de código.Boas práticas: Use @mentions e Code Lenses sempre que possível para garantir que o escopo da chamada ao LLM esteja correto.
Orientação: Em geral, o botão Refactor/Windsurf Command são as melhores maneiras de solicitar melhorias. O Windsurf Chat é o melhor lugar para pedir explicações ou esclarecimentos. Isso é um pouco vago, mas o Windsurf deve se sair bem em ambos.Windsurf Chat é o melhor lugar para pedir explicações ou esclarecimentos.Isso é um pouco vago, mas o Windsurf deve se sair bem em ambos.Boas práticas: Use os prompts do menu suspenso (também conhecido como botão Refactor do Windsurf) — temos prompts personalizados, projetados para aumentar a probabilidade de você obter a resposta esperada.
Orientação: A melhor forma é criar o arquivo de cabeçalho, abrir o Chat, @mencionar a função no arquivo .cpp e pedir para escrever o protótipo no cabeçalho. Em seguida, repita isso iterativamente para cada função no arquivo .cpp. Essa é a melhor maneira de evitar alucinações ao longo do processo.Boas práticas: Evite, em geral, tentar escrever um arquivo de cabeçalho inteiro em uma única chamada ao LLM. Dividir o trabalho em partes menores aumenta significativamente a qualidade do código gerado.

Documentação de API e Integração

Orientação: Isso é semelhante à cobertura de testes: partes da especificação de API que são comuns a muitas bibliotecas o Windsurf conseguirá preencher com precisão. No entanto, itens criados especificamente para o seu caso de uso interno podem ser mais difíceis para o Windsurf produzir na qualidade esperada.Boas práticas: Assim como em cobertura de testes, sempre que possível, conduza o modelo de IA do Windsurf pela melhor forma de raciocinar sobre o que a API faz — isso permitirá gerar uma documentação mais consistente.
Orientação: O comprimento de contexto do Windsurf para uma única chamada de LLM é de 16.000 tokens. Assim, dependendo do escopo da sua busca, a pesquisa em todo o repositório pode não ser suficiente. Tarefas em nível de repositório, com múltiplas etapas e múltiplas edições, serão suportadas em produtos futuros do Windsurf.Fundamentalmente, este é um problema de múltiplas etapas que chamadas únicas a LLMs (isto é, a funcionalidade atual de todos os assistentes de código com IA) não estão bem equipadas para resolver. Além disso, a precisão do resultado precisa ser muito maior do que em outros casos de uso, pois integrações são especialmente frágeis.Boas práticas: O Windsurf não está bem equipado para resolver esse problema hoje. Se quiser testar o alcance da funcionalidade atual do Windsurf, elabore um plano passo a passo e solicite ao Windsurf cada etapa individualmente, com alto nível de detalhamento para orientar a IA.

Refatoração de código

Orientação: Garanta o escopo adequado usando Windsurf Code Lenses ou @ Mentions para assegurar que todo o contexto necessário seja repassado ao LLM.Os limites de contexto para uma única chamada ao LLM são finitos. Assim, dependendo do escopo da sua refatoração, essa limitação pode ser um problema (e, aliás, em qualquer paradigma de LLM de uma única interação). Tarefas em todo o repositório, com múltiplas etapas e edições, agora são compatíveis no Cascade do Windsurf.Boas práticas: Procure decompor o prompt ao máximo. Quanto mais simples e curto for o comando de refatoração, melhor.
Orientação: Garanta o escopo adequado usando Windsurf Code Lenses ou @ Mentions para assegurar que todo o contexto necessário seja repassado ao LLM.O limite de contexto do Windsurf para uma única chamada ao LLM é de 16.000 tokens. Assim, dependendo do escopo da sua refatoração, esse limite pode ser um problema (e, aliás, em qualquer paradigma de LLM de uma única interação). Tarefas em todo o repositório, com múltiplas etapas e edições, serão compatíveis em futuros produtos do Windsurf.Boas práticas: Procure decompor o prompt ao máximo. Quanto mais simples e curto for o comando de refatoração, melhor.