Exécution de Claude Code hors ligne sur un M3 Pro avec Qwen3.6 : 4 correctifs qui ont fonctionné

Claude Code se connecte à un modèle local sur un Apple M3 Pro (18 cœurs GPU, 36 GiB de mémoire unifiée, ~150 Go/s de bande passante) exécutant qwen3.6:35b-a3b-coding-nvfp4 — un modèle MoE de 35,1 milliards de paramètres avec ~3 milliards actifs par jeton, quantifié NVFP4, ~21 Go sur disque et ~20 GiB en mémoire résidente. La configuration a permis de traiter un incident Kubernetes de l'investigation à la PR : trouver la cause racine, écrire le correctif, pousser la branche, soumettre la PR via gh — le tout en mode air-gap. Quatre correctifs ont transformé un modèle qui expirait en 10 minutes en un outil qui boucle la boucle. La vitesse est limitée par le matériel ; la capacité ne l'est pas.
Stack et environnement
- Matériel : Apple M3 Pro, 18 cœurs GPU, 36 GiB de mémoire unifiée, ~150 Go/s de bande passante mémoire
- Modèle :
qwen3.6:35b-a3b-coding-nvfp4 - Runtime : Ollama 0.24.0, exécuteur MLX (natif Apple Silicon)
- Client : Claude Code v2.1.84 pointant vers le point de terminaison local Ollama
Variables d'environnement clés (définies dans un plist launchd pour persistance) :
OLLAMA_MLX=1
OLLAMA_CONTEXT_LENGTH=32768
OLLAMA_FLASH_ATTENTION=1
OLLAMA_MULTIUSER_CACHE=1
OLLAMA_KEEP_ALIVE=24h
OLLAMA_NO_CLOUD=1
Étapes de configuration
- Installer Ollama 0.24.0+
ollama pull qwen3.6:35b-a3b-coding-nvfp4(~21 Go, une fois)- Démarrer le serveur avec les variables d'environnement ci-dessus
- Lancer Claude Code :
ANTHROPIC_BASE_URL=http://localhost:11434 MAX_THINKING_TOKENS=0 claude --model qwen3.6:35b-a3b-coding-nvfp4 - Test de validation :
Run kubectl get pods -A and tell me if anything appears unhealthy
Notes de performance
Premier appel d'outil : quelques secondes (réflexion désactivée). Le préremplissage (chargement d'environ 25 000 jetons) prend ~60 s. Les tours suivants sont plus rapides grâce au cache de préfixe (OLLAMA_MULTIUSER_CACHE). Le modèle reste chargé via OLLAMA_KEEP_ALIVE=24h. Une rafale de 404 dans le journal Ollama pendant le préremplissage est normale (correctif n°4).
L'architecture MoE est essentielle : seulement ~3B actifs par jeton, donc le coût d'exécution ressemble à celui d'un modèle dense de 14B tandis que les réponses approchent un 35B. Un modèle dense de 35B ne tient pas dans 36GiB.
📖 Lire la source complète : HN LLM Tools
👀 See Also

Barre d'état personnalisée pour Claude Code : utilisation du contexte, limites de taux et nombre de tokens en un coup d'œil
Un script personnalisé ajoute une ligne d'état persistante à Claude Code, affichant le pourcentage de contexte, la limite de taux sur 5 heures, les lectures du cache KV, les jetons d'entrée/sortie cumulés, le nom du modèle et le répertoire de travail — avec un code couleur pour les terminaux sombres.

/compress-architecture : Une compétence d'agent pour éliminer la sur-ingénierie
Une nouvelle compétence d'agent appelée /compress-architecture audite les bases de code pour détecter les couches spéculatives, les modules de passage, et les concepts en double tout en protégeant les véritables limites du domaine et les API publiques.

Plugin de mémoire de l'agent OpenClaw : Contexte persistant entre les sessions
Un développeur a créé un plugin de mémoire pour OpenClaw qui donne aux agents une mémoire persistante entre les sessions, résolvant le problème des agents qui oublient tout entre les interactions et nécessitent les mêmes explications à répétition.

Kanban CLI : Un gestionnaire de tâches local et axé sur les agents pour le terminal
Kanban CLI est un outil terminal en Rust offrant un suivi structuré des tâches avec intégration complète de git, conçu pour les flux de travail pilotés par des agents IA.