Skip to main content
Tillbaka till bloggen
claude-codeproductivityclidevtools

Flera Claude Code-konton på en enhet

Hur du använder två (eller fler) Claude Code-konton parallellt — personligt och företag — med fullständig isolation med en enda miljövariabel.

Publicerad 5 maj 2026Uppdaterad 9 augusti 20264 min läsning
Uppdatering: Jag har sedan dess gått över till ett renare och mer skalbart upplägg — Claude Code Multi-Profile, v2: en ren XDG-arkitektur. Om du börjar i dag, använd det. Metoden med en enda miljövariabel nedan fungerar fortfarande och är enklaste sättet att komma igång, men v2 är det aktuella tillvägagångssättet.

Jag använder Claude Code dagligen — för personliga projekt och för jobbet. Problemet: det är två helt olika konton med olika OAuth-sessioner, olika CLAUDE.md-instruktioner, olika MCP-servrar och separerat projektminne. Så här kör jag dem parallellt på en enhet med ett enda shell-alias.

Problemet

Claude Code lagrar allt i ~/.claude som standard — OAuth-token, konversationshistorik, global CLAUDE.md, projektminne, MCP-serverkonfigurationer och inställningar. Med två konton behöver du två helt separata världar:

  • Personligt konto: egen Max/Pro-prenumeration, personlig CLAUDE.md med dina preferenser, dina MCP-servrar (Obsidian, personliga verktyg)
  • Företagskonto: företagsplan, arbets-CLAUDE.md med Jira/Slack-integrationsinstruktioner, företagets MCP-servrar
  • Olika OAuth-sessioner: du kan inte vara inloggad på två konton i samma konfigurationskatalog
  • Separerat projektminne: du vill inte att arbetskontext läcker in i personliga sessioner och vice versa

Att logga ut och in varje gång du byter kontext är inte ett alternativ. Du förlorar sessionstillståndet, och det är helt enkelt smärtsamt.

Lösningen: CLAUDE_CONFIG_DIR

Claude Code respekterar en enda miljövariabel: CLAUDE_CONFIG_DIR. Sätt den till vilken sökväg som helst, och Claude använder den katalogen istället för ~/.claude för allt — auth, historik, inställningar, minne. Hela setupen tar 60 sekunder.

Steg 1: Skapa en andra konfigurationskatalog

Välj ett namn som passar ditt användningsfall:

Terminal
mkdir ~/.claude-work

Klart. Claude fyller den med nödvändig struktur vid första start.

Steg 2: Autentisera det andra kontot

Kör Claude en gång med den nya konfigurationskatalogen för att trigga OAuth-login:

Terminal
CLAUDE_CONFIG_DIR=~/.claude-work claude

Webbläsaren öppnas. Logga in med ditt företagskonto. OAuth-token sparas i ~/.claude-work — helt separat från din personliga session i ~/.claude.

Steg 3: Lägg till ett shell-alias

Lägg till detta i din shell-konfiguration så du inte behöver komma ihåg variabeln:

~/.zshrc
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'

Ladda om din shell:

Terminal
source ~/.zshrc

Vad du får

Nu har du två helt isolerade Claude-miljöer:

  • claude — startar med personligt konto, personlig CLAUDE.md, personligt minne
  • claude-work — startar med företagskonto, arbetsspecifik CLAUDE.md, separat minne
  • Isolerad historik: arbetskonversationer stannar i arbetet, personliga stannar personliga
  • Separata MCP-servrar: din personliga Obsidian vault MCP syns inte i arbetssessioner
  • Oberoende inställningar: olika tillåtna verktyg, olika behörighetsnivåer, olika modellpreferenser per konto

Hur det fungerar under huven

Konfigurationskatalogen är den enda sanningskällan för Claude Codes tillstånd. Här är vad som lever inuti varje:

~/.claude/              ← personal account
├── CLAUDE.md           ← personal global instructions
├── projects/           ← personal project memory
├── settings.json       ← personal permissions & MCP servers
└── ...                 ← OAuth session, history, cache

~/.claude-work/         ← corporate account
├── CLAUDE.md           ← company-specific instructions (Jira, Slack, etc.)
├── projects/           ← separate project memory
├── settings.json       ← different MCP servers, permissions
└── ...                 ← separate OAuth session

När du kör claude-work läser Claude allt från ~/.claude-work. Den vet inte att ~/.claude existerar. De två instanserna är helt oberoende — du kan till och med köra dem samtidigt i olika terminalflikar.

Skalning till N konton

Mönstret utökas till valfritt antal konton. Frilansare med flera kunder? Lägg till fler alias:

~/.zshrc
# Personal (default — no alias needed)
# Just run: claude

# Corporate
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'

# Freelance client
alias claude-client='CLAUDE_CONFIG_DIR=~/.claude-client claude'

Varje alias får sin egen konfigurationskatalog, sin egen OAuth-session, sin egen CLAUDE.md med kundspecifika instruktioner.

Praktiska tips

  • Namnge kataloger tydligt: ~/.claude-work, ~/.claude-clientname — du tackar dig själv när det finns tre eller fyra
  • Skriv skräddarsydd CLAUDE.md för varje: arbets-CLAUDE.md kan innehålla företagsspecifika instruktioner (Jira-tickets, Slack-kanaler, deployment-procedurer). Den personliga förblir mager.
  • Olika MCP-servrar per konto: konfigurera arbetsverktyg (Jira MCP, Slack MCP, interna API:er) bara i arbetskonfigurationen. Håll din personliga ren.
  • Kolla vilket konto som är aktivt: kör claude config list i en session om du är osäker — visar sökvägen till konfigurationskatalogen

Där den här lösningen inte räcker till

CLAUDE_CONFIG_DIR isolerar per konto, inte per projekt. Inuti en enskild profil ser Claude varje MCP-server du någonsin har registrerat för det kontot — tvärs över alla dina projekt. För rent personlig användning är det oftast okej. I det ögonblick du har flera produktionskritiska projekt under ett konto, särskilt i överlappande domäner som fakturering, adminverktyg eller infrastruktur, introducerar det en konkret risk mellan projekt: en AI-assistent kan anropa ett verktyg från projekt A medan den jobbar med projekt B, särskilt när båda exponerar liknande namngivna operationer.

Profilmönstret besvarar frågan which account am I in?. Det besvarar inte frågan which project's tools should be active right now?. För arbete med högre insatser, stapla ett andra isolationslager ovanpå kontouppdelningen:

  • En profil per produktionskritiskt projekt, inte bara per konto: istället för ~/.claude och ~/.claude-work, skapa ~/.claude-work-billing och ~/.claude-work-admin. Varje profil ser bara de MCP-servrar den faktiskt behöver.
  • Projektspecifik MCP via .mcp.json: commit:a en .mcp.json i projektroten som listar bara det projektets MCP-servrar. Claude plockar upp dem när den startas från den katalogen. Håll din globala konfiguration minimal — bara universella verktyg (anteckningar, sökning), inga produktionsendpoints.
  • Namnge MCP-servrar otvetydigt: undvik generiska namn som admin, billing, mcp-server. Prefixa med projektet: acme_billing_prod, acme_admin_stage. Ett beskrivande namn tvingar fram en paus när något är på väg att anropas från fel kontext.
  • Granska varje MCP-verktygsanrop innan du godkänner: anrop som *_create_*, *_delete_*, *_charge_* förtjänar en medveten andra blick. Vilken hastighet du än vinner på rakt av automatiskt godkännande avdunstar första gången ett verktyg från fel projekt avfyras mot produktion.

Den allmänna regeln: dela upp profiler aggressivt, håll produktionsklar MCP utanför default-profilen, och behandla överlapp i verktygsnamn mellan projekt som en smell värd att refaktorera.

Slutsats

En miljövariabel. Ett alias. Fullständig isolation mellan konton. Ingen logout/login-dans, inga konfigurationskonflikter, inget kontextläckage. Den typen av lösning som är nästan besvikande enkel — men det är precis det som gör den bra. Sätt upp en gång och tänk aldrig på det igen.

Hittade du ett fel?

Ett felaktigt faktum, en skev översättning, något som känns falskt i den här artikeln? Skriv till mig — på ditt eget språk.