Trabalhando com projetos grandes
Gerencie grandes bases de código no Bob IDE. Entenda a otimização da janela de contexto, o manuseio de arquivos e as melhores práticas para projetos em escala empresarial.
Entendendo limites de contexto em projetos grandes
Bob usa modelos de linguagem grandes que têm uma janela de contexto limitada. Esta é a quantidade máxima de texto (medida em tokens) que Bob pode processar de uma vez. Se o contexto for muito grande, Bob pode não ser capaz de entender sua solicitação ou gerar respostas precisas.
A janela de contexto inclui:
- O prompt do sistema (instruções para Bob)
- O histórico de conversa
- O conteúdo de quaisquer arquivos que você mencione usando
@ - Texto selecionado enviado ao chat usando Cmd + L (Mac) ou Ctrl + L (Windows/Linux)
- A saída de quaisquer comandos ou ferramentas que Bob use
Estratégias para gerenciar contexto
- Seja específico: Ao se referir a arquivos ou código, use caminhos de arquivo específicos e nomes de função. Evite referências vagas como "o arquivo principal."
- Use menções de contexto efetivamente: Use
@/path/to/file.tspara incluir arquivos específicos. Use@problemspara incluir erros e avisos atuais. Use@seguido de um hash de commit para referenciar commits Git específicos. Você também pode destacar texto no seu editor e usar Cmd + L (Mac) ou Ctrl + L (Windows/Linux) para enviá-lo diretamente ao chat. - Divida tarefas: Divida tarefas grandes em subtarefas menores e mais gerenciáveis. Isso ajuda a manter o contexto focado.
- Resuma quando necessário: Se você precisa se referir a uma grande quantidade de código, considere resumir as partes relevantes no seu prompt em vez de incluir o código inteiro.
- Priorize histórico recente: Bob condensa automaticamente mensagens mais antigas no histórico de conversa para permanecer dentro da janela de contexto. Esteja atento a isso e reincorpore contexto importante se necessário.
- Configure o manuseio de arquivos grandes: Ajuste a configuração de manuseio de arquivos grandes para controlar como Bob processa arquivos que excedem um certo limite de tamanho. Isso ajuda a gerenciar o uso de contexto ao trabalhar com arquivos grandes.
- Gerencie o uso de ferramentas MCP: Você pode desabilitar e habilitar ferramentas específicas em um serviço MCP para usar apenas o que você precisa, reduzindo o consumo de contexto de definições de ferramentas não utilizadas.
- Use subagentes ou subtarefas para trabalho isolado: Para grandes peças de trabalho autocontidas, considere usar um subagente ou subtarefa. Ambos executam em sua própria janela de contexto separada, mantendo a conversa principal leve. Consulte Tools para detalhes sobre
spawn_subagentestart_subtask. - Use ferramentas de símbolos em vez de menções de arquivo completo: Em vez de mencionar um arquivo inteiro com
@, Bob pode usar ferramentas comoGetSymbolsOvervieweFindSymbolpara navegar diretamente para a classe ou função relevante. Isso recupera apenas o que é necessário e evita carregar o arquivo completo no contexto.
Exemplo: Refatorando um arquivo grande
Se você precisa refatorar um arquivo TypeScript grande (src/components/MyComponent.tsx), aqui está uma abordagem eficaz:
- Obtenha uma visão geral inicial:
@/src/components/MyComponent.tsx Liste as funções e classes neste arquivo. - Direcione funções específicas:
@/src/components/MyComponent.tsx Refatore a função `processData` para usar `async/await` em vez de Promises. - Faça mudanças iterativas: Faça mudanças pequenas e incrementais, revisando e aprovando cada etapa.
Ao dividir a tarefa e fornecer contexto específico, você pode trabalhar efetivamente com arquivos grandes dentro dos limites da janela de contexto.
Envenenamento de contexto
Aprende o que é envenenamento de contexto, como reconhecê-lo numa conversa com o Bob e como recuperar iniciando uma task nova ou melhorando a higiene de contexto.
Atalhos de teclado
Use atalhos de teclado para simplificar seu fluxo de trabalho e reduzir a dependência de interações com o mouse.