Gerenciamento de Contexto Persistente
Enquanto o gerenciamento de sessões (/session) salva o histórico da conversa, o gerenciamento de contextos (/context) salva o conteúdo do seu ambiente de trabalho. É a funcionalidade mais poderosa para quem trabalha em múltiplos projetos ou precisa consultar frequentemente a mesma base de código.
Um Contexto é um “snapshot” nomeado de um ou mais arquivos e diretórios, processado e salvo em disco para ser reutilizado a qualquer momento.
O Ciclo de Vida de um Contexto
A utilização de contextos segue um fluxo simples e poderoso:
- 📦 Criar (
/context create): Você define um conjunto de arquivos e pastas, processa-os com um modo específico (ex:smart,chunked) e salva o resultado com um nome. - 📌 Anexar (
/context attach): Você “anexa” um ou mais contextos salvos à sua sessão de conversa atual. - 🧠 Usar: Enquanto estiver anexado, o conteúdo do contexto será automaticamente enviado para a IA em todos os seus prompts, fornecendo um conhecimento profundo e contínuo sobre seu projeto.
- ✂️ Desanexar (
/context detach): Quando não precisar mais do contexto, você o desanexa para liberar espaço no prompt da IA.
Comandos de Gerenciamento de Contexto
Aqui estão todos os subcomandos disponíveis para gerenciar seus contextos.
create: Criar um Novo Contexto
Cria e salva um novo contexto a partir de arquivos e diretórios.
Sintaxe:
Opções:
- –mode
ou -m : Define como os arquivos serão processados. Os modos são os mesmos do comando @file : full , summary , chunked ou smart . - –description
ou -d : Adiciona uma descrição textual para ajudar a identificar o contexto. - –tags <tag1,tag2> ou -t : Adiciona tags para facilitar a filtragem e organização.
- –force , -f : Sobrescreve um contexto existente com o mesmo nome.
Exemplo:
Cria um contexto ‘api-core’ com o modo smart, descrição e tags
–mode smart
–description “Contexto com o núcleo da API e documentação”
–tags golang,api
attach e detach : Anexar e Desanexar da Sessão
Estes comandos controlam quais contextos estão ativos na sua conversa atual.
- /context
attach: Anexa um contexto à sessão. - /context
detach: Remove um contexto da sessão. - /context
attached: Lista todos os contextos atualmente anexados.
Anexação Avançada de Chunks
Se um contexto foi criado com –mode=chunked , você pode anexar partes específicas dele:
- –chunk
: Anexa apenas o chunk de número N . - –chunks <N,M,…> : Anexa uma lista de chunks específicos.
- –priority
: Define a ordem em que os contextos anexados são enviados (menor número = maior prioridade).
Exemplo:
Anexa apenas os chunks 1 e 3 do contexto ’legado-db’ com alta prioridade
list , show , e inspect : Visualizar Contextos
Estes comandos ajudam você a entender o que há em seus contextos salvos.
- /context
list: Lista todos os contextos disponíveis, com metadados básicos. - /context
show: Exibe informações detalhadas de um contexto, incluindo a lista completa de arquivos. - /context
inspect: Fornece uma análise estatística profunda do contexto, como distribuição de tipos de arquivo, contagem de linhas e análise de tamanho dos chunks. Use –chunk N para inspecionar um chunk específico.
Outros Comandos de Gerenciamento
- /context
delete: Deleta um contexto permanentemente. - /context
merge: Combina múltiplos contextos em um novo, removendo arquivos duplicados. - /context
export<caminho.json> : Exporta um contexto para um arquivo JSON, facilitando o backup e compartilhamento. - /context
import<caminho.json> : Importa um contexto a partir de um arquivo JSON. - /context
metrics: Mostra estatísticas globais sobre todos os seus contextos (número total, tamanho, etc.). - /context
help: Exibe uma tela de ajuda específica para os comandos de contexto.
Próximos Passos
Você agora conhece os recursos mais poderosos de automação e gerenciamento de contexto do ChatCLI. Para finalizar, vamos documentar as funcionalidades que garantem a portabilidade e a integração da ferramenta em scripts.
➡️ Próximo: Modo Não-Interativo e Casos de Uso