Pular para o conteúdo
Voltar ao início
Feature

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.

Atualizado:
6 min
Por Pelayo Naredo
Como a IA do PocketCode Funciona nos Bastidores

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:

  1. O arquivo aberto (até 4.000 caracteres), a linguagem dele e o nome do projeto
  2. Uma lista de caminhos e um mapa do repositório
  3. A memória do projeto (até 4.000 caracteres), se houver
  4. 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:

FerramentaO que faz
create_fileCria arquivos no seu projeto
run_in_terminalExecuta um comando no shell local
db_queryExecuta consultas no banco de dados
design_listLista e lê projetos do designer visual
git_statusVerifica o status do Git
read_fileLê arquivos do projeto
semantic_searchOrdena o código pelas palavras-chave de uma pergunta em linguagem natural
grep_searchBusca 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 comando ssh esperam 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_file recusa 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.

A ferramenta por trás deste artigo

Assistente de IA

Pronto para experimentar o PocketCode?

Baixe o app e comece a programar pelo seu celular.