Executando o Claude Code Offline em um M3 Pro com Qwen3.6: 4 Correções Que Fizeram Funcionar

O Claude Code se conecta a um modelo local em um Apple M3 Pro (18 núcleos GPU, 36 GiB de memória unificada, ~150 GB/s de largura de banda) executando qwen3.6:35b-a3b-coding-nvfp4 — um modelo MoE de 35,1B parâmetros com ~3B ativos por token, quantizado NVFP4, ~21GB em disco e ~20GiB residentes. A configuração levou um incidente Kubernetes da investigação ao PR: encontrou a causa raiz, escreveu o patch, enviou o branch e registrou o PR via gh — tudo em ambiente air-gapped. Quatro correções transformaram um modelo que timeoutava em 10 minutos em um que fecha o ciclo. A velocidade é limitada pelo hardware; a capacidade não.
Stack e Ambiente
- Hardware: Apple M3 Pro, 18 núcleos GPU, 36 GiB de memória unificada, ~150 GB/s de largura de banda
- Modelo:
qwen3.6:35b-a3b-coding-nvfp4 - Runtime: Ollama 0.24.0, MLX runner (nativo Apple Silicon)
- Cliente: Claude Code v2.1.84 apontando para endpoint local do Ollama
Variáveis de ambiente principais (definidas em um plist do launchd para persistência):
OLLAMA_MLX=1
OLLAMA_CONTEXT_LENGTH=32768
OLLAMA_FLASH_ATTENTION=1
OLLAMA_MULTIUSER_CACHE=1
OLLAMA_KEEP_ALIVE=24h
OLLAMA_NO_CLOUD=1
Passos de Configuração
- Instale o Ollama 0.24.0+
ollama pull qwen3.6:35b-a3b-coding-nvfp4(~21GB uma vez)- Inicie o servidor com as variáveis de ambiente acima
- Inicie o Claude Code:
ANTHROPIC_BASE_URL=http://localhost:11434 MAX_THINKING_TOKENS=0 claude --model qwen3.6:35b-a3b-coding-nvfp4 - Teste rápido:
Execute kubectl get pods -A e me diga se algo parece não saudável
Notas de Desempenho
Primeira chamada de ferramenta: segundos (thinking desabilitado). Preenchimento (carregando ~25K tokens) leva ~60s. As iterações seguintes são mais rápidas devido ao prefix caching (OLLAMA_MULTIUSER_CACHE). O modelo permanece carregado via OLLAMA_KEEP_ALIVE=24h. Rajada de 404s no log do Ollama durante o preenchimento é normal (correção #4).
A arquitetura MoE é fundamental: apenas ~3B ativos por token, então o custo de execução se assemelha a um modelo denso de 14B, enquanto as respostas se aproximam de um de 35B. Um modelo denso de 35B não cabe em 36GiB.
📖 Leia a fonte completa: HN LLM Tools
👀 See Also

Painel local monitora o uso do Claude Code com custos de tokens, chamadas de ferramentas e análises de sessão
Um desenvolvedor criou um painel local que lê os arquivos de sessão JSONL do Claude Code para visualizar o uso de tokens, custos estimados, detalhamento de chamadas de ferramentas e histórico de sessões. A ferramenta funciona inteiramente na sua máquina com uma API Express e um painel React.
Voz OpenClaw: Hardware faça você mesmo para controle de casa inteligente de fala para fala
OpenClaw Voice transforma o Home Assistant Voice PE ($59) em uma interface de hardware dedicada com conversão fala-a-fala em menos de um segundo, reconhecimento de impressão vocal e integração com a memória do OpenClaw. Fala autêntica via OpenAI Realtime, palavra de ativação personalizada e feedback para tarefas longas.

Agente de Trading de IA com Salvaguardas de Risco para Investimento Educacional
Um desenvolvedor criou um assistente de negociação com IA que conecta o Claude a uma conta de corretora com um mecanismo de risco entre a IA e o dinheiro. O sistema inclui verificações de segurança como bloquear negociações que excedam 50% da alocação da carteira, desligamento automático com perda diária de 3% e um botão de emergência para perdas de 20%.

Automatizando a Triagem de Alertas do Datadog com Claude Code e MCP
Um desenvolvedor criou um sistema usando as habilidades do Claude Code e o servidor MCP do Datadog para verificar automaticamente alertas de monitoramento, classificar problemas e abrir PRs de correção via cron job. A configuração leva cerca de 30 minutos e executa agentes de IA em paralelo em worktrees isolados.