Como a IA do PocketCode Funciona nos Bastidores
Um olhar técnico sobre como projetamos o assistente de IA do PocketCode: sugestões em linha, chat contextual e ferramentas que alcançam os módulos do app, com o seu próprio provedor.
Como a IA do PocketCode Funciona nos Bastidores
A inteligência artificial do PocketCode não é um chatbot genérico colado a um editor. É um sistema integrado que entende seu projeto, seu código e os módulos que você está usando. Neste post, vamos contar como construímos isso.
Arquitetura Geral
O sistema de IA tem três peças principais:
1. Sugestões em linha (ghost text)
Enquanto você digita, o editor pode mostrar uma sugestão em cinza depois do cursor, com o provedor de IA que você conectou. Ela funciona separada dos servidores de linguagem, que dão autocompletar e diagnósticos localmente.
O que ela faz e o que não faz:
- Uma janela em torno do cursor: a requisição leva até 2.000 caracteres antes do cursor e 500 depois (estilo Fill-in-the-Middle), mais a linguagem. Ela não envia o resto do projeto.
- Código curto e puro: o modelo é instruído a responder só com código, no máximo 10 linhas, ou a não responder nada quando nada se encaixa.
- Ligada por padrão, com um provedor: precisa de um provedor com chave ou login, do aviso de dados que você aceita na primeira vez e das chaves Sugestões automáticas e Completar código (Configurações → IA, ambas ligadas por padrão). Ela se desliga sozinha em arquivos muito grandes.
2. Chat Contextual
O chat de IA não é um simples prompt-resposta. A cada turno o app monta um contexto e o envia junto com a sua mensagem:
- O arquivo aberto (até 4.000 caracteres), a linguagem dele e o nome do projeto
- Uma lista de caminhos e um mapa do repositório
- A memória do projeto (até 4.000 caracteres), se houver
- Suas menções com
@, os arquivos que você anexa e os resultados das ferramentas
Isso significa que você pode perguntar "o que esta função faz?" sem copiar e colar código. Antes de um prompt sair do dispositivo, formatos comuns de chave (chaves da OpenAI, Anthropic, Google, GitHub, AWS e assim por diante) e os seus segredos guardados são mascarados: uma rede de segurança, não uma garantia.
3. Ferramentas de Módulos (Tool Calling)
Esta é a parte mais poderosa. O app declara 84 ferramentas e um chat normal oferece até 79 delas, em 14 categorias (arquivos, terminal, Git, banco de dados, API, SSH, deploy, o Dev Browser e mais), para que a IA trabalhe com os módulos do app. Uma amostra representativa:
| Ferramenta | O que faz |
|---|---|
create_file | Cria arquivos no seu projeto |
run_in_terminal | Executa um comando no shell local |
db_query | Executa consultas no banco de dados |
design_list | Lista e lê projetos do designer visual |
git_status | Verifica o status do Git |
read_file | Lê arquivos do projeto |
semantic_search | Ordena o código pelas palavras-chave de uma pergunta em linguagem natural |
grep_search | Busca no código uma string ou padrão exatos |
Quando você diz à IA "crie um ViewModel para a lista de usuários", ela não só gera código: pode criar o arquivo na pasta que você pedir e editar os arquivos que precisam da mudança.
Segurança
O que o agente pode fazer é decidido por um nível de acesso de cinco passos: Sem ferramentas, Só leitura, Perguntar, Editar sozinho (Auto-edit, o padrão: escreve arquivos por conta própria e pergunta antes de executar comandos) e Acesso total.
- Sempre pergunta sobre o que sai do dispositivo: um
git push, um deploy, uma requisição de API ou um comandosshesperam o seu OK em todos os níveis, a menos que você desligue essa proteção em Permissões de ferramentas IA. - Verificação de risco dos comandos: os comandos de terminal são classificados antes de rodar, e um catastrófico nunca roda. É defesa em profundidade, não um sandbox.
- Permissões por ferramenta: em Configurações → IA → Permissões de ferramentas IA você pode negar qualquer ferramenta para um provedor ou um modelo.
- Limites: um comando espera 30 segundos por padrão (120 no máximo) e o
read_filerecusa arquivos acima de 5 MB.
Modelos Suportados
O PocketCode funciona com vários provedores de IA em um modelo BYOK (traga a sua própria chave), com login do ChatGPT e do GitHub onde o provedor permite. O PocketCode não é um provedor de IA: cada requisição vai direto do dispositivo para o provedor que você escolher, e o uso é cobrado pelo provedor segundo a política dele.
- Gemini (Google) — somente API key
- OpenAI — API key, ou entre com a sua conta do ChatGPT pelo Codex CLI incluído (apenas celulares ARM de 64 bits)
- Anthropic Claude — somente API key (
sk-ant-…) - GitHub Copilot — entre com a sua conta do GitHub
- Custom (compatível com OpenAI) — qualquer endpoint
/v1: OpenRouter, Groq, DeepSeek, LM Studio, Ollama ou o seu próprio servidor. HTTP sem criptografia só funciona com localhost; um Ollama ou LM Studio na sua rede precisa de HTTPS ou de um túnel.
A lista de modelos não é fixa: a lista de cada provedor é lida ao vivo do próprio provedor, e o app guarda uma pequena lista de reserva para quando você está sem rede ou sem chave.
Todos os provedores são grátis. O PocketCode nunca cobra pelo acesso aos modelos; o plano pago é para os seus próprios motores e ferramentas (Swarmcode, Cortex e AI Office são Pro, e o Cloud Sync também).
Os usuários conectam a conta ou a API key em Configurações → IA → Chaves de API.
Conclusão
A IA do PocketCode não é um componente aparafusado por cima — é parte integral da experiência de desenvolvimento. Cada módulo do app (terminal, banco de dados, designer, Git) está conectado, e a IA pode alcançar todos eles por meio de ferramentas, sob o nível de acesso que você escolher. Se quiser começar, confira o guia de primeiros passos.
Você pode ver o status completo do desenvolvimento em nosso post de status.
Assistente de IA