Installering och konfiguration av Claude Code för Ollama, llama.cpp samt prisinformation.
Agentbaserad kodning, nu med lokala modellbakar.
Claude Code är inte bara autocomplete med bättre marknadsföring. Det är ett agenterande verktyg för kodning: det läser din kodbas, redigerar filer, kör kommandon och integrerar med dina utvecklingsverktyg.
Den skillnaden spelar roll eftersom arbetsenheten slutar vara “en kodrad” och börjar vara “en uppgift med ett slutskick”.
Anthropic formulerar distinktionen tydligt: kodkomplettering föreslår nästa rad medan du skriver, medan Claude Code opererar på projektnivå, planerar över flera filer, utför ändringar, kör tester och itererar vid misslyckanden. I praktiken gör det det närmare en juniorutvecklare med terminalfokus som kan utföra rutnar snabbt, men fortfarande behöver granskning.
Den spänning som uppstår mellan hastighet och tillsyn är mycket av det som människor sammanfattar som “vibe coding”; Vad är Vibe Coding? bryter ner termen, varifrån den kommer, och vad effektivitet och risk ser ut i praktiken.

En detalj som är lätt att missa när man skummar dokumentation: Terminal-CLI:n (och gränssnittet i VS Code) kan konfigureras för att använda tredjepartsleverantörer. Det är där Ollama och llama.cpp kommer in.
När Claude Code pekar mot en lokal HTTP-endpoint, ligger avvägningarna kring körning, hårdvara och värd utanför klienten; denna jämförelse av LLM-värd i 2026 samlar Ollama, dedikerade inferensstackar och molnalternativ på ett ställe.
För att se hur Claude Code passar in bredvid andra AI-assisterade kodnings- och leveransflöden, samlar denna guide till AI-utvecklarverktyg Copilot-liknande assistenter, automatisering och redigeringsmönster på ett ställe.
För en verktygsvis översikt över kodningsassistenter i samma kategori, går Jämförelse av AI-kodningsassistenter igenom Cursor, Copilot, Cline och resten på en högre nivå än denna installationsguide.
Installation och snabbstart med Claude Code
Installationsalternativ och vad de innebär
Det finns flera installationsvägar, och de är inte lika:
- Nativa installeringsskript är alternativet för “alltid aktuellt” eftersom de uppdaterar automatiskt.
- Homebrew och WinGet är alternativet för “kontrollerad förändring” eftersom du uppgraderar explicit.
Installationskommandon (officiell snabbstart):
# 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
Starta sedan ett interaktivt session från inuti en projektmapp:
cd /path/to/your/project
claude
Inloggning och kontotyp
Claude Code behöver ett konto för att köra i första-parti-läge. Snabbstartflödet stöder inloggning via ett Claude-abonnemang (Pro, Max, Team, Enterprise), ett Console-konto (API-kredit) eller stödda molnleverantörer. En användbar operativ fotnot: vid första inloggningen i Console skapas ett “Claude Code”-arbetsområde för centraliserad kostnadsspårning.
Konfiguration för Claude Code: settings.json och miljövariabler
Om Claude Code känns magiskt när det fungerar, känns det ofta “mysteriskt” när det inte gör det. Boten är att förstå dess konfigurationsskikt och de få miljövariabler som faktiskt spelar roll.
Inställningsfiler och prioritet
Claude Code-inställningar är hierarkiska, med tre filer som är inriktade på utvecklare:
- Användarscope, gäller överallt: ~/.claude/settings.json
- Projektscope, delas i ett repo: .claude/settings.json
- Lokalt scope, per-maskin-överkörningar: .claude/settings.local.json (gitignored)
Prioritet är (högst till lägst): hanterad policy, CLI-flaggor, lokal, projekt, användare. Den ordningen förklarar flera ögonblick av “varför ignoreras min konfig”.
Du kan hantera inställningar interaktivt via kommandot /config, som öppnar ett inställningsgränssnitt inuti REPL:n.
Miljövariabler som styr leverantörsruttning
Claude Code kan styras under körning av miljövariabler. Två beteendemässiga kuriositeter är värda att behandlas som designbegränsningar:
-
Om ANTHROPIC_API_KEY är inställd, kommer Claude Code att använda nyckeln istället för ett Claude-abonnemang även när du är inloggad. I utskriftsläge (-p) används nyckeln alltid när den finns.
-
Om ANTHROPIC_BASE_URL pekar mot en icke-första-parts-värd (en proxy, gateway eller lokal server), är vissa funktioner medvetet konservativa. Till exempel är MCP-verktygssökning inaktiverad som standard om du inte explicit återaktiverar den.
För den specifika abonnemangsgräns som nu tillämpas i tredjepartsagentstackar, denna uppdatering av Claude-policy för OpenClaw-flöden förklarar varför API-baserad användning krävs.
Ett minimalt mönster för “använd en gateway” ser ut så här:
export ANTHROPIC_BASE_URL=https://your-gateway.example
export ANTHROPIC_API_KEY=sk-your-key
Gateway-notering: Claude Code förväntar sig vissa API-format. För Anthropic Messages-formatet måste gatewayn exponera /v1/messages och /v1/messages/count_tokens och måste vidarebefordra huvudena anthropic-beta och anthropic-version. Om en gateway avvisar dessa huvuden finns det en dedikerad knut att ta bort experimentella betas.
Modellval i Claude Code när du inte använder Anthropic direkt
Claude Code har ett koncept av alias (opus, sonnet, haiku) och stöder också att spika specifika modell-ID:n. Det finns också en tillåtlista som kan begränsa vad användare kan välja i modellväljaren, även när det ruttas via tredjepartsleverantörer.
Ett pragmatiskt mönster är att sätta en initial modell och begränsa väljaren, och sedan spika vad “standard” löser till via miljö:
{
"model": "claude-sonnet-4-5",
"availableModels": ["claude-sonnet-4-5", "haiku"],
"env": {
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5"
}
}
Körning av självvärd LLM via Ollama
Ollama är för närvarande det sätt med lägst friktion för att få Claude Code att köra på icke-Anthropic-modeller, eftersom det exponerar ett Anthropic-kompatibelt API för Claude Code att prata med.
Snabbinställning med ollama launch
Om du har Ollama installerad och körande, är den snabba vägen:
ollama launch claude
Eller specificera en modell vid start:
ollama launch claude --model glm-4.7-flash
Manuell inställning med explicita miljövariabler
Ollama-integrationen dokumenterar en enkel manuell koppling där Claude Code pratar med Ollama via Anthropic-kompatibelt API-endpoint:
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_API_KEY=""
export ANTHROPIC_BASE_URL=http://localhost:11434
claude --model qwen3.5
Detta mönster är åsiktsstyrt på ett användbart sätt: det behandlar “leverantörsruttning” som en miljöfråga, inte något du klickar i en GUI.
Verklighetscheck för kontextfönster
Agenterande kodning är kontextkrävande. Ollama pekar ut det rakt på: Claude Code kräver ett stort kontextfönster och rekommenderar minst 64k token. Om din lokala modell toppar vid 8k eller 16k, kommer Claude Code fortfarande att köra, men löftet om “projektnivå” blir skört.
För praktisk lokal modellbeteende i en liknande terminal-agentinställning (Ollama och llama.cpp, koduppgifter och ärliga misslyckandes anteckningar), är Bästa LLM för OpenCode - Testat lokalt en användbar tvärkontroll när du kortlistar GGUF- eller Ollama-taggar för Claude Code.
Körning av självvärd LLM via llama.cpp
llama.cpp är attraktiv av den motsatta anledningen: det försöker inte vara en plattform. Det är en snabb, lättviktig server som kan exponera både OpenAI-kompatibla vägar och en Anthropic Messages-API-kompatibel väg.
För installationsvägar, llama-cli och llama-server-beteende bortom klippningarna nedan, är llama.cpp Snabbstart med CLI och Server referensen från start till mål.
Vad som ska köras på serversidan
llama.cpp HTTP-servern (llama-server) stöder ett Anthropic-kompatibelt Messages-API på POST /v1/messages, med strömning via SSE. Den erbjuder också count_tokens på /v1/messages/count_tokens.
Två detaljer spelar roll för Claude Code:
- Servern gör inte explicita påståenden om full kompatibilitet med Anthropic API-specifikationen, men anger att den fungerar tillräckligt bra för många appar.
- Verktygsanvändning kräver att llama-server startas med flaggan –jinja. Om du missar detta, kommer Claude Code att bete sig som att den plötsligt glömde hur man är en agent.
Ett minimalt lokalt kör ser ut så här:
# Bygg eller ladda ner llama-server, kör sedan med en GGUF-modell
./llama-server -m /models/your-model.gguf --jinja --host 127.0.0.1 --port 8080
Om du vill ha en hård autentiseringsgräns, kan llama-server konfigureras med en API-nyckel:
./llama-server -m /models/your-model.gguf --jinja --api-key my-local-key --host 127.0.0.1 --port 8080
Peka Claude Code mot llama-server
Med servern körande, är din Claude Code-sida mestadels en bas-URL-överkörning:
export ANTHROPIC_BASE_URL=http://127.0.0.1:8080
export ANTHROPIC_API_KEY=my-local-key # bara om du aktiverade --api-key på llama-server
claude --model your-model-alias
Om du inte sätter en API-nyckel eller autentiserings-token, kan Claude Code försöka falla tillbaka på abonnemangsloggning, vilket är källan till många klagomål om “varför öppnas en webbläsare”.
Hälsokontroller och första misslyckandetrage
llama-server exponerar en enkel hälsa-endpoint som returnerar “laddar modell” tills modellen är redo, och “ok” när den är användbar. När Claude Code verkar hänga på den första förfrågan, är att kontrollera /health ett snabbt sätt att skilja “klientkonfigurationsbugg” från “servern laddar fortfarande”.
Prissättning och kostnadsmodell
Prissättningen för Claude Code handlar mindre om “att köpa en CLI” och mer om “vilken faktureringsskena som backar token”.
Abonnemangsplaner inkluderar Claude Code
Anthropic inkluderar Claude Code i betalda Claude-abonnemangsnivåer. Per april 2026 listar den publicerade prissättningen:
- Pro till $17 per månad med ett årsrabatt ($200 debiterad i förskott), eller $20 debiterad månatligt, och det inkluderar Claude Code.
- Max-planer som börjar vid $100 per månad.
- Team-planer prissatta per säte, med en standardplats till $20 per säte per månad debiterad årligen ($25 månatligt) och en premiumplats till $100 per säte per månad debiterad årligen ($125 månatligt).
API-token-prissättning
Om du använder Claude Code via API-fakturering, följer kostnaderna tokenhastigheter. Anthropic publicerar prissättning per miljon token (MTok) för modeller såsom:
- Haiku 4.5 till $1/MTok inmatning och $5/MTok utmatning.
- Sonnet 4.5 till $3/MTok inmatning och $15/MTok utmatning.
- Opus 4.5 till $5/MTok inmatning och $25/MTok utmatning.
Kostnadskontroller i CLI:n
Utskriftsläge (-p) stöder direkta budgetgränser som –max-budget-usd, vilket är användbart när du skriver skript och vill ha förutsägbara utgifter.
Inuti interaktiva sessioner visar /cost statistik för tokenanvändning.
Lokala backendar ändrar fakturan, inte fysiken
Att ruttar Claude Code till Ollama eller llama.cpp kan ta bort per-token-API-fakturor, men det gör inte arbetet gratis. Du byter molnkostnader mot lokal beräkning, minne och “någon äger upptid”. För vissa team är den utbytet hela poängen.
Typiskt flöde: från plan till PR
Min bias är att Claude Code är starkast när du behandlar det som en flödesmotor, inte en chatbot. Verktygen antyder detta.
Börja med tillståndsmodellen, inte prompten
Claude Code är tillståndsbegränsat genom design. Dokumenten beskriver en trappad modell: skrivskyddade operationer som filinläsning och grep är tillåtna, medan bash-kommandon och filändringar behöver godkännande.
Tillståndslägen finns för att hantera friktion. I CLI:n kan du cykla mellan lägen med Shift+Tab (standard -> acceptEdits -> plan). Planläge läser och föreslår ändringar men redigerar inte. acceptEdits-läge tillåter Claude Code att skapa och redigera filer i din arbetsmapp utan att fråga, men frågar fortfarande om kommandon med biverkningar utanför sin säkra lista.
Autoläge är ett nyare alternativ som minskar promptar genom att delegera godkännanden till en klassificerare, positionerat som en säkrare mellanväg mellan konstanta promptar och att helt inaktivera promptar. Det kräver en minimiversion av Claude Code samt specifika krav på plan och modell.
Använd inbyggda kommandon för att hålla sessioner ärliga
Ett fåtal kommandon förvandlar Claude Code från “assistent” till “verktyg”:
- /init genererar en CLAUDE.md-projekthandledning, vilket är ett lättviktigt sätt att mata in konsekvent kontext. För återanvändbara handböcker och upprepbara flöden som ligger ovanför
CLAUDE.md, täcker Claude Skills för utvecklare SKILL.md-layout, IDE-kompatibilitet, triggerjustering och testning. - /diff ger en interaktiv vy av ändringar, inklusive per-vändning-diffar.
- /rewind låter dig spola tillbaka konversation och/eller kod till en tidigare punkt, med hjälp av kontrollpunkter.
- /debug aktiverar debuglogning under sessionen.
- /doctor diagnostiserar och verifierar din installation och inställningar.
Dessa är inte gimmicks; de är säkerhetsrälsarna du lutar dig mot när en agent redigerar mer än du förväntade dig.
När du ska gå icke-interaktivt
För enskilda uppgifter (förklara, sammanfatta, generera en patchplan) är utskriftsläge ett bra pass:
claude -p "Sammanfatta repository-arkitekturen och lista de riskfylldaste modulerna"
Den avslutas efter svaret, vilket fungerar bra i skript och CI.
Felsökningschecklista
De flesta Claude Code-problem är konfigurationsproblem i förkläde. Här är en checklista som kopplar vanliga symtom till den underliggande mekanismen.
Claude Code fortsätter be om inloggning medan det använder en lokal server
Detta betyder vanligtvis att Claude Code fortfarande försöker använda första-parti-abonnemangsautentisering. Se till att du sätter en explicit autentiseringsläge för proxyn:
- Sätt ANTHROPIC_API_KEY för gateways som förväntar sig X-Api-Key.
- Eller sätt ANTHROPIC_AUTH_TOKEN för gateways som använder Authorization Bearer.
Kom ihåg att ANTHROPIC_API_KEY överskriver abonnemangsanvändning även om du är inloggad, och i interaktivt läge kan du behöva godkänna den överskrivningen en gång.
Gatewayen ger fel på anthropic-beta-huvuden
Vissa gateways avvisar okända huvuden eller beta-fält. Det finns en miljövariabel designad för just detta misslyckandeläge:
export CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1
LLM-gateway-dokumentationen noterar också att du kan behöva detta när du använder Anthropic Messages-formatet med Bedrock eller Vertex.
Verktygsanrop fungerar inte på llama.cpp
Dubbelkolla serverflaggor. llama-server dokumenterar att verktygsanvändning kräver –jinja-flaggan. Utan den kan servern svara, men agentloopen kommer att degradas.
Tillståndspromptar avbryter varje kommando
Det kan vara normalt, beroende på läge och tillståndsregler. Alternativ inkluderar:
- Byt till acceptEdits tillfälligt (filredigeringar flyter snabbare).
- Skriv explicita tillåtna regler för kända säkra bash-kommandon i settings.json.
- Använd /sandbox för att isolera bash-verktyget samtidigt som du minskar promptar.
- Utvärdera autoläge om din plan och version stöder det, som en mittpunkt.
Något känns fel och du behöver observerbarhet
Använd inbyggda kommandon:
- /doctor för att validera installation och inställningar.
- /debug för att börja fånga loggar från den punkten framåt.
- Om du är i utskriftsläge, överväg en tight max-budget och max-vändningar för att hålla experiment begränsade.