Para desenvolvedores de software submetidos a normas rígidas de governança de dados, conformidade regulatória ou termos de confidencialidade (NDA), enviar código-fonte proprietário para modelos de linguagem na nuvem (como OpenAI GPT-4o ou Anthropic Claude 3.5 Sonnet) é frequentemente proibido por políticas corporativas de segurança. Por outro lado, abrir mão de atalhos ágeis de inteligência artificial no teclado reduz drasticamente a velocidade de desenvolvimento diário.
Ao executar modelos abertos localmente no macOS por meio do Ollama e conectá-los diretamente ao Raycast AI, é possível estruturar um hub de produtividade com zero tráfego de dados para a nuvem. O Raycast funciona como a camada nativa acionada por atalhos de teclado (via Quick AI, AI Chat e AI Commands personalizados), enquanto o Ollama processa as inferências na memória unificada do Apple Silicon, sem enviar nenhuma linha de código pela internet.
Arquitetura e limites de privacidade: zero tráfego para a nuvem
Para atender às exigências de conformidade da equipe de segurança da informação, é fundamental conhecer o fluxo de dados:
- Comunicação por loopback local: Ao configurar modelos locais, o Raycast envia as requisições via HTTP diretamente para o processo do Ollama em execução na máquina (por padrão em
http://localhost:11434). Os pesos do modelo residem na memória RAM/VRAM local e utilizam aceleração gráfica via Metal, transmitindo as respostas em streaming para o Raycast. - Sem telemetria de terceiros: Nem os servidores do Raycast nem provedores externos de IA recebem seus códigos, comandos ou respostas.
- Operação totalmente offline: Depois de baixar os pesos do modelo, o fluxo funciona sem conexão com a internet e sem consumir créditos do Raycast AI.
Dimensionamento de hardware e modelos de programação recomendados
A velocidade de inferência local depende diretamente da capacidade de memória unificada (UMA) do seu Mac. Para manter editores como Xcode e VS Code, além de containers Docker, em execução simultânea, selecione o tamanho do modelo conforme a memória disponível:
| Memória Unificada | Modelos recomendados | Quantização e consumo | Casos de uso e vantagens |
|---|---|---|---|
| 16 GB | qwen2.5-coder:7b; llama3.1:8b; mistral:7b | Q4_K_M (~4.7 GB - 5.2 GB de ocupação) | Explicação rápida de funções, criação de expressões regulares, docstrings e mensagens de commit; consumo leve de memória. |
| 32 GB - 36 GB | qwen2.5-coder:14b; deepseek-coder-v2:16b; gemma2:9b | Q4_K_M / Q5_K_M (~9 GB - 11 GB de ocupação) | Refatoração precisa de código, geração de testes unitários para múltiplos arquivos, discussões de arquitetura e scripts complexos. |
| 64 GB - 128 GB+ | qwen2.5-coder:32b; llama3.3:70b (64GB+ Q4); codellama:34b | Q4_K_M / Q8_0 (~20 GB - 42 GB de ocupação) | Auditorias profundas de segurança, identificação de vulnerabilidades e vazamentos de memória, com qualidade próxima aos principais modelos em nuvem. |
Observação sobre janela de contexto: O Raycast limita a janela de contexto de modelos locais a 64k tokens para evitar saturação de memória e preservar a resposta fluida no macOS.
Passo a passo de configuração
Passo 1: Instalar o Ollama e baixar os modelos de código
No macOS, instale o Ollama via Homebrew ou pelo pacote oficial:
# Opção A: Instalação via Homebrew
brew install --cask ollama
# Opção B: Baixe o arquivo DMG em ollama.com e arraste para /Applications
Abra o aplicativo Ollama pela primeira vez para ativar o ícone na barra de menus e configurar os binários do sistema.
Em seguida, abra o Terminal do macOS e faça o download dos modelos focados em engenharia de software:
# Baixar modelos de referência para programação
ollama pull qwen2.5-coder:7b
ollama pull llama3.1:8b
# Verificar os modelos instalados
ollama list
Faça um teste rápido no terminal para conferir a resposta do modelo:
ollama run qwen2.5-coder:7b "Escreva uma função em Python para calcular médias móveis"
Passo 2: Configurar modelos locais no Raycast
O Raycast oferece suporte nativo para o Ollama (funcionalidade disponível para assinantes do Raycast Pro):
- Pressione
⌥ Espaço(ou seu atalho de abertura) para abrir o Raycast. - Pressione
⌘ ,para acessar os Ajustes do Raycast (Settings). - Selecione a aba AI na barra superior.
- Clique em Models & Providers e role até a seção Local Models.
- O Raycast detectará a instalação do Ollama automaticamente. Se os modelos baixados não aparecerem de imediato, clique em Sync Models.
- Também é possível baixar modelos diretamente pelo Raycast: digite o identificador (por exemplo,
qwen2.5-coder:7b) no campo Install Ollama Model e clique em Install.
Dica: Quando você consulta um modelo local, o Raycast inicia o serviço do Ollama automaticamente em segundo plano, sem necessidade de manter terminais abertos.
Passo 3: Configurar um servidor Ollama remoto em rede local (opcional)
Caso sua equipe utilize um Mac Studio ou servidor Linux com GPU dedicado na rede interna da empresa:
- Configure o Ollama no servidor para escutar na interface de rede (
OLLAMA_HOST=0.0.0.0:11434). - No Raycast, vá em Settings → AI → Models & Providers → Local Models e localize o campo Ollama Host.
- Insira o endereço interno privado, como
http://192.168.1.50:11434. - Clique em Sync Models. As inferências serão executadas no servidor dedicado sem tráfego pela internet pública.
Lista de verificação para conformidade e privacidade
Para garantir que dados corporativos confidenciais nunca saiam da máquina, revise as seguintes opções do Raycast:
- Desativar o Cloud Sync para conversas de IA:
- Vá em Settings → Cloud Sync.
- Por padrão, o Cloud Sync criptografa e sincroniza históricos de chat entre dispositivos. Se as políticas de segurança da empresa proibirem armazenamento de trechos de código em nuvem, desative a sincronização de IA ou limpe o histórico com regularidade.
- Desativar a memória de IA (AI Memory):
- Em Settings → AI → Personalization, verifique a opção Memory.
- Quando a memória global de IA está ativada, resumos periódicos das conversas podem ser gerados em segundo plano por modelos hospedados na nuvem do Raycast. Em ambientes com exigência de isolamento estrito (air-gap), desative a opção Memory.
- Evitar ferramentas exclusivas de nuvem:
- Recursos como geração de imagens utilizam modelos remotos nos servidores do Raycast e consomem créditos. Para rotinas de código, utilize exclusivamente ferramentas locais de texto.
- Não enviar relatórios de depuração com código corporativo:
- A função "Send Feedback" anexa a conversa ativa para suporte técnico. Evite utilizá-la em sessões que contenham trechos confidenciais de código.
Atalhos e comandos personalizados para o dia a dia de desenvolvimento
Com os modelos locais ativados, você pode integrá-los diretamente aos seus fluxos de trabalho no macOS:
1. Chat de IA seguro no desktop
Abra o AI Chat (⌘ ⌥ Espaço) e alterne o modelo no rodapé para a opção local (por exemplo, Local: qwen2.5-coder:7b). É possível colar esquemas de bancos de dados, exemplos de chamadas internas e logs de erro com total garantia de confidencialidade.
2. Comandos personalizados de IA (Custom AI Commands)
Acesse Raycast Settings → Extensions → AI → AI Commands, clique em Create AI Command e configure comandos para tarefas recorrentes:
- Gerar mensagem de commit no padrão Conventional Commits:
- Prompt:
Com base no seguinte diff do git, elabore uma mensagem de commit concisa seguindo o padrão Conventional Commits. Retorne apenas o título e o corpo em tópicos, sem introduções ou explicações adicionais: - Input: Selected Text ou Clipboard
- Model:
Local: qwen2.5-coder:7b - Action: Paste into Active App ou Copy to Clipboard
- Prompt:
- Auditoria de segurança e análise de vulnerabilidades:
- Prompt:
Analise o código a seguir em busca de vazamentos de memória, vulnerabilidades de injeção SQL/XSS, condições de corrida ou credenciais em texto puro. Liste os problemas por ordem de severidade com sugestões concretas de correção: - Input: Selected Text
- Model:
Local: qwen2.5-coder:14b - Action: Show in Chat
- Prompt:
- Inclusão de tipagem estrita e documentação:
- Prompt:
Sem alterar o comportamento de execução, adicione tipagens estritas em TypeScript e comentários no formato TSDoc ao código a seguir: - Input: Selected Text
- Model:
Local: qwen2.5-coder:7b - Action: Replace Selected Text
- Prompt:
Alternativa para usuários do plano gratuito do Raycast: extensões da comunidade
A integração nativa em Local Models faz parte do plano Raycast Pro. Usuários do plano gratuito do Raycast podem conectar o Ollama por meio de extensões comunitárias disponíveis na Raycast Store:
- Abra o Raycast e acesse a Store.
- Procure pela extensão Ollama AI e faça a instalação.
- Nas preferências da extensão, defina a URL da API como
http://localhost:11434. - Utilize comandos como Ollama Chat ou ações rápidas de transformação de texto. Embora não tenha a integração de sistema do Quick AI nativo, a privacidade local e a retenção zero de dados permanecem idênticas.
Diagnóstico de problemas comuns (Troubleshooting)
- O Raycast informa "Ollama is not installed":
Verifique se o aplicativo do Ollama está localizado em
/Applicationsou se o comandoollamaestá acessível no PATH do sistema. Inicie o Ollama pelo Finder uma vez e clique em Sync Models nas preferências do Raycast. Se o caminho de instalação for customizado, defina o campo Ollama Host comohttp://localhost:11434. - O modelo baixado não aparece na lista de seleção:
Execute
ollama listno terminal para verificar se o download foi concluído. Em seguida, acesse Settings → AI → Models & Providers → Local Models no Raycast e clique em Sync Models. Em Manage Models, certifique-se de que a caixa de seleção do modelo está marcada. - Respostas lentas ou travamentos no sistema: Isso indica que o tamanho do modelo excede a memória unificada livre, forçando o macOS a realizar swap intenso no SSD. Em Macs com 16 GB, utilize modelos de 7B ou 8B na quantização Q4 e evite variantes de 14B ou 32B. Feche abas pesadas do navegador ou containers desnecessários antes de consultas mais longas.