Installation et configuration de Claude Code pour Ollama, llama.cpp, ainsi que les tarifs.
Programmation agentique, désormais avec des backends de modèles locaux.
Claude Code n’est pas un système d’auto-complétion avec un meilleur marketing. C’est un outil de codage agentique : il lit votre base de code, modifie des fichiers, exécute des commandes et s’intègre à vos outils de développement.
Cette différence a son importance, car l’unité de travail cesse d’être « une ligne de code » pour devenir « une tâche avec un état final ».
Anthropic définit clairement cette distinction : la complétion de code suggère la ligne suivante pendant que vous tapez, tandis que Claude Code opère au niveau du projet, planifie sur plusieurs fichiers, exécute des changements, lance des tests et itère sur les échecs. En pratique, cela le rapproche d’un ingénieur junior natif du terminal qui peut effectuer des tâches rapidement, mais qui a toujours besoin d’une revue.
Cette tension entre vitesse et supervision constitue une grande partie de ce que les gens regroupent sous le terme « vibe coding » ; Qu’est-ce que le Vibe Coding ? explore ce terme, son origine, et à quoi ressemblent l’efficacité et les risques en pratique.

Un détail facile à manquer lors d’une lecture rapide de la documentation : le Terminal CLI (et l’interface VS Code) peut être configuré pour utiliser des fournisseurs tiers. C’est là qu’interviennent Ollama et llama.cpp.
Une fois que Claude Code est pointé vers une fin de point HTTP locale, les compromis liés au runtime, au matériel et à l’hébergement se situent hors du client ; cette comparaison d’hébergement de LLM en 2026 aligne Ollama, les piles d’inférence dédiées et les options cloud en un seul endroit.
Pour voir comment Claude Code s’intègre aux autres flux de travail de codage et de livraison assistés par IA, ce guide sur les outils de développement IA regroupe les assistants de style Copilot, l’automatisation et les modèles d’éditeur en un seul endroit.
Pour une analyse détaillée des assistants de codage dans la même catégorie, Comparaison des assistants de codage IA examine Cursor, Copilot, Cline et les autres à un niveau plus élevé que ce guide d’installation.
Installation et démarrage rapide de Claude Code
Options d’installation et leurs implications
Il existe plusieurs chemins d’installation, et ils ne sont pas égaux :
- Les scripts d’installation natifs sont l’option « toujours à jour » car ils se mettent à jour automatiquement.
- Homebrew et WinGet sont l’option « changement contrôlé » car vous effectuez les mises à niveau explicitement.
Commandes d’installation (démarrage rapide officiel) :
# macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
:: Windows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
Puis lancez une session interactive depuis un dossier de projet :
cd /path/to/your/project
claude
Connexion et types de compte
Claude Code nécessite un compte pour fonctionner en mode premier. Le flux de démarrage rapide prend en charge les connexions via un abonnement Claude (Pro, Max, Team, Enterprise), un compte Console (crédits API) ou des fournisseurs cloud pris en charge. Une note opérationnelle utile : lors de la première connexion à la Console, un espace de travail « Claude Code » est créé pour un suivi centralisé des coûts.
Configuration de Claude Code : settings.json et variables d’environnement
Si Claude Code semble magique lorsqu’il fonctionne, il peut sembler « mystérieux » lorsqu’il ne fonctionne pas. Le remède consiste à comprendre sa superposition de configuration et les quelques variables d’environnement qui comptent vraiment.
Fichiers de configuration et priorité
Les paramètres de Claude Code sont hiérarchiques, avec trois fichiers destinés aux développeurs :
- Portée utilisateur, s’applique partout : ~/.claude/settings.json
- Portée projet, partagée dans un dépôt : .claude/settings.json
- Portée locale, remplacements par machine : .claude/settings.local.json (gitignored)
La priorité est (du plus élevé au plus bas) : politique gérée, options CLI, local, projet, utilisateur. Cet ordre explique plusieurs moments de type « pourquoi ma configuration est-elle ignorée ».
Vous pouvez gérer les paramètres de manière interactive via la commande /config, qui ouvre une interface de paramètres dans le REPL.
Variables d’environnement contrôlant le routage du fournisseur
Claude Code peut être dirigé à l’exécution par des variables d’environnement. Deux bizarreries de comportement méritent d’être traitées comme des contraintes de conception :
-
Si ANTHROPIC_API_KEY est défini, Claude Code utilisera la clé au lieu d’un abonnement Claude, même si vous êtes connecté. En mode impression (-p), la clé est toujours utilisée lorsqu’elle est présente.
-
Si ANTHROPIC_BASE_URL pointe vers un hôte non premier (un proxy, une passerelle ou un serveur local), certaines fonctionnalités sont intentionnellement conservatrices. Par exemple, la recherche d’outils MCP est désactivée par défaut sauf si vous la réactivez explicitement.
Pour la frontière d’abonnement spécifique appliquée actuellement dans les piles d’agents tiers, cette mise à jour de politique Claude pour les flux de travail OpenClaw explique pourquoi une utilisation basée sur l’API est requise.
Un motif minimal « utiliser une passerelle » ressemble à ceci :
export ANTHROPIC_BASE_URL=https://your-gateway.example
export ANTHROPIC_API_KEY=sk-your-key
Note sur la passerelle : Claude Code s’attend à certains formats API. Pour le format Messages Anthropic, la passerelle doit exposer /v1/messages et /v1/messages/count_tokens et doit transférer les en-têtes anthropic-beta et anthropic-version. Si une passerelle rejette ces en-têtes, il existe un contrôle dédié pour supprimer les bêta expérimentaux.
Sélection de modèle dans Claude Code lorsque vous n’utilisez pas Anthropic directement
Claude Code a un concept d’alias (opus, sonnet, haiku) et prend également en charge la fixation d’identifiants de modèles spécifiques. Il existe également une liste d’autorisation qui peut restreindre ce que les utilisateurs peuvent sélectionner dans le sélecteur de modèle, même lorsqu’ils sont acheminés via des fournisseurs tiers.
Un motif pragmatique consiste à définir un modèle initial et à restreindre le sélecteur, puis à fixer ce à quoi « default » se résout via l’environnement :
{
"model": "claude-sonnet-4-5",
"availableModels": ["claude-sonnet-4-5", "haiku"],
"env": {
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5"
}
}
Exécution de LLM auto-hébergés via Ollama
Ollama est actuellement le moyen le moins friction pour faire fonctionner Claude Code sur des modèles non-Anthropic, car il expose une API compatible Anthropic avec laquelle Claude Code peut communiquer.
Configuration rapide avec ollama launch
Si vous avez Ollama installé et en cours d’exécution, le chemin rapide est :
ollama launch claude
Ou spécifiez un modèle au lancement :
ollama launch claude --model glm-4.7-flash
Configuration manuelle avec des variables d’environnement explicites
L’intégration Ollama documente un câblage manuel simple où Claude Code parle à Ollama via l’endpoint API compatible Anthropic :
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_API_KEY=""
export ANTHROPIC_BASE_URL=http://localhost:11434
claude --model qwen3.5
Ce motif est d’opinion d’une manière utile : il traite le « routage de fournisseur » comme une préoccupation d’environnement, et non comme quelque chose sur lequel on clique dans une GUI.
Réalité de la fenêtre de contexte
Le codage agentique est gourmand en contexte. Ollama le dit brutalement : Claude Code nécessite une grande fenêtre de contexte et recommande au moins 64k tokens. Si votre modèle local plafonne à 8k ou 16k, Claude Code fonctionnera toujours, mais la promesse « niveau projet » devient fragile.
Pour un comportement de modèle local pratique dans une configuration d’agent terminal similaire (Ollama et llama.cpp, tâches de codage et notes d’échec francs), Meilleurs LLM pour OpenCode - Testés localement est un contrôle utile lorsque vous faites une courte liste de tags GGUF ou Ollama pour Claude Code.
Exécution de LLM auto-hébergés via llama.cpp
llama.cpp est attrayant pour la raison opposée : il ne tente pas d’être une plateforme. C’est un serveur rapide et léger qui peut exposer à la fois des routes compatibles OpenAI et une route d’API Messages Anthropic compatible.
Pour les chemins d’installation, llama-cli et le comportement de llama-server au-delà des extraits ci-dessous, Démarrage rapide de llama.cpp avec CLI et Server est la référence de bout en bout.
Que faire fonctionner côté serveur
Le serveur HTTP llama.cpp (llama-server) prend en charge une API Messages compatible Anthropic à POST /v1/messages, avec streaming via SSE. Il propose également count_tokens à /v1/messages/count_tokens.
Deux détails sont importants pour Claude Code :
- Le serveur ne fait pas de revendications fortes de compatibilité totale avec la spécification API Anthropic, mais indique qu’il fonctionne suffisamment bien pour de nombreuses applications.
- L’utilisation d’outils nécessite de démarrer llama-server avec le drapeau –jinja. Si vous l’oubliez, Claude Code se comportera comme s’il avait soudainement oublié comment être un agent.
Une exécution locale minimale ressemble à ceci :
# Construisez ou téléchargez llama-server, puis exécutez avec un modèle GGUF
./llama-server -m /models/your-model.gguf --jinja --host 127.0.0.1 --port 8080
Si vous voulez une frontière d’authentification stricte, llama-server peut être configuré avec une clé API :
./llama-server -m /models/your-model.gguf --jinja --api-key my-local-key --host 127.0.0.1 --port 8080
Pointer Claude Code vers llama-server
Avec le serveur en cours d’exécution, votre côté Claude Code est principalement une substitution d’URL de base :
export ANTHROPIC_BASE_URL=http://127.0.0.1:8080
export ANTHROPIC_API_KEY=my-local-key # seulement si vous avez activé --api-key sur llama-server
claude --model your-model-alias
Si vous ne définissez pas de clé API ou de jeton d’authentification, Claude Code peut tenter de revenir à la connexion d’abonnement, ce qui est la source de nombreuses plaintes « pourquoi cela ouvre-t-il un navigateur ».
Vérifications de santé et triage des premiers échecs
llama-server expose un endpoint de santé simple qui retourne « loading model » jusqu’à ce que le modèle soit prêt, et « ok » lorsqu’il est utilisable. Lorsque Claude Code semble se bloquer sur la première requête, vérifier /health est un moyen rapide de distinguer un « bug de configuration client » d’un « serveur toujours en chargement ».
Tarification et modèle de coût
La tarification de Claude Code concerne moins « acheter un CLI » que « quel rail de facturation soutient les tokens ».
Les plans d’abonnement incluent Claude Code
Anthropic inclut Claude Code dans les niveaux d’abonnement Claude payants. À partir d’avril 2026, la tarification publiée liste :
- Pro à 17 $ par mois avec un discount annuel (200 $ facturés d’avance), ou 20 $ facturés mensuellement, et cela inclut Claude Code.
- Plans Max à partir de 100 $ par mois.
- Plans Team tarifés par siège, avec un siège standard à 20 $ par siège par mois facturé annuellement (25 $ mensuel) et un siège premium à 100 $ par siège par mois facturé annuellement (125 $ mensuel).
Tarification des tokens API
Si vous utilisez Claude Code via la facturation API, les coûts suivent les taux de tokens. Anthropic publie une tarification par million de tokens (MTok) pour des modèles tels que :
- Haiku 4.5 à 1 $/MTok entrée et 5 $/MTok sortie.
- Sonnet 4.5 à 3 $/MTok entrée et 15 $/MTok sortie.
- Opus 4.5 à 5 $/MTok entrée et 25 $/MTok sortie.
Contrôles de coûts dans le CLI
Le mode impression (-p) prend en charge des plafonds de budget directs comme –max-budget-usd, ce qui est pratique lorsque vous scriptez des tâches et voulez des dépenses prévisibles.
À l’intérieur des sessions interactives, /cost affiche les statistiques d’utilisation des tokens.
Les backends locaux changent la facture, pas la physique
Rediriger Claude Code vers Ollama ou llama.cpp peut supprimer les facturations API par token, mais cela ne rend pas le travail gratuit. Vous échangez les coûts cloud contre du calcul local, de la mémoire et « quelqu’un possède la disponibilité ». Pour certaines équipes, cet échange est tout le point.
Flux de travail typique : du plan à la PR
Mon biais est que Claude Code est le plus fort lorsque vous le traitez comme un moteur de flux de travail, pas comme un chatbot. Les outils suggèrent cela.
Commencez par le modèle de permission, pas par le prompt
Claude Code est verrouillé par permission par conception. La documentation décrit un modèle à paliers : les opérations en lecture seule telles que la lecture de fichiers et grep sont autorisées, tandis que les commandes bash et les modifications de fichiers nécessitent une approbation.
Les modes de permission existent pour gérer la friction. Dans le CLI, vous pouvez faire défiler les modes avec Shift+Tab (default -> acceptEdits -> plan). Le mode Plan lit et propose des changements mais ne modifie pas. Le mode acceptEdits permet à Claude Code de créer et de modifier des fichiers dans votre répertoire de travail sans demander, tout en demandant toujours pour les commandes ayant des effets secondaires hors de sa liste sécurisée.
Le mode Auto est une option plus récente qui réduit les prompts en déléguant les approbations à un classificateur, positionné comme un chemin moyen plus sûr entre les prompts constants et la désactivation complète des prompts. Il nécessite une version minimale de Claude Code et des exigences de plan et de modèle spécifiques.
Utilisez les commandes intégrées pour garder les sessions honnêtes
Quelques commandes transforment Claude Code d’« assistant » en « outil » :
- /init génère un guide de projet CLAUDE.md, qui est un moyen léger d’alimenter un contexte cohérent. Pour des playbooks réutilisables et des flux de travail répétables situés au-dessus de
CLAUDE.md, Claude Skills pour les développeurs couvre la disposition SKILL.md, la compatibilité IDE, le réglage de déclencheurs et les tests. - /diff donne une vue interactive des changements, y compris les diffs par tour.
- /rewind vous permet de rembobiner la conversation et/ou le code à un point précédent, en utilisant des points de contrôle.
- /debug active la journalisation de débogage en milieu de session.
- /doctor diagnostique et vérifie votre installation et vos paramètres.
Ce ne sont pas des gadgets ; ce sont les rails de sécurité sur lesquels vous vous appuyez lorsqu’un agent modifie plus que prévu.
Quand passer en mode non interactif
Pour des tâches ponctuelles (expliquer, résumer, générer un plan de patch), le mode impression est un bon choix :
claude -p "Summarise the repository architecture and list the riskiest modules"
Il se termine après la réponse, ce qui fonctionne bien dans les scripts et le CI.
Liste de vérification de dépannage
La plupart des problèmes de Claude Code sont des problèmes de configuration déguisés. Voici une liste de vérification qui mappe les symptômes courants au mécanisme sous-jacent.
Claude Code continue de demander de se connecter lors de l’utilisation d’un serveur local
Cela signifie généralement que Claude Code essaie encore d’utiliser l’authentification d’abonnement premier. Assurez-vous de définir un mode d’authentification explicite pour le proxy :
- Définissez ANTHROPIC_API_KEY pour les passerelles qui s’attendent à X-Api-Key.
- Ou définissez ANTHROPIC_AUTH_TOKEN pour les passerelles qui utilisent Authorization Bearer.
Rappelez-vous que ANTHROPIC_API_KEY remplace l’utilisation de l’abonnement même si vous êtes connecté, et en mode interactif, vous devrez peut-être approuver ce remplacement une fois.
La passerelle signale une erreur sur les en-têtes anthropic-beta
Certaines passerelles rejettent les en-têtes inconnus ou les champs bêta. Il existe une variable d’environnement conçue pour ce mode d’échec exact :
export CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1
La documentation de la passerelle LLM note également que vous pouvez avoir besoin de cela lors de l’utilisation du format Messages Anthropic avec Bedrock ou Vertex.
L’appel d’outil ne fonctionne pas sur llama.cpp
Vérifiez à nouveau les drapeaux du serveur. llama-server documente que l’utilisation d’outils nécessite le drapeau –jinja. Sans cela, le serveur peut répondre, mais la boucle d’agent se dégradera.
Les prompts de permission interrompent chaque commande
Cela peut être normal, selon le mode et les règles de permission. Les options incluent :
- Passer temporairement en acceptEdits (les modifications de fichiers s’écoulent plus vite).
- Écrire des règles d’autorisation explicites pour les commandes bash connues comme sûres dans settings.json.
- Utiliser /sandbox pour isoler l’outil bash tout en réduisant les prompts.
- Évaluer le mode auto si votre plan et votre version le supportent, comme compromis.
Quelque chose semble incorrect et vous avez besoin d’observabilité
Utilisez les intégrations :
- /doctor pour valider l’installation et les paramètres.
- /debug pour commencer à capturer les journaux à partir de ce point.
- Si vous êtes en mode impression, envisagez un budget maximal serré et un nombre maximal de tours pour garder les expériences bornées.