Välkommen till Flexbert!

Sätt upp Claude Code så du kan jobba med Flexbert direkt på Republikens server.

Den här guiden tar dig igenom hela installationen från noll. Den är skriven för dig som inte är van vid terminalen, du behöver inte förstå varför varje steg behövs, bara kopiera-klistra in kommandona i rätt ordning.

Total tid: cirka 20 till 30 min. Du kan pausa när som helst.

Mac eller Windows? Använd knapparna ovanför, kommandona byts då automatiskt för ditt system. Du ser just nu Mac-varianten. Du ser just nu Windows-varianten.
Platshållare i den här guiden Vissa kommandon innehåller platshållare i VERSALER som du byter ut mot dina egna värden innan du kör dem:

DITT-ANVÄNDARNAMN = ditt unix-användarnamn på servern. Jonatan ger dig det när han skapar ditt konto, oftast ditt förnamn i gemener.
DIN-EMAIL@republiken.se = din jobb-email, används för Cloudflare-inloggningen.

Jonatan talar också om vilka kund-kanaler du har access till.
Vad är Flexbert? Republikens AI-assistent som har full kontext om våra kunder och deras setup. Idag pratar du med honom via Discord. Med Claude Code kan du också jobba tillsammans med honom direkt på datorn, analysera data, skapa rapporter, läsa kund-minne osv.
Vad är nytt sedan tidigare guide? Anslutningen till servern går nu via Cloudflare istället för direkt-SSH. Det betyder två saker: du kan jobba var som helst (hemma, kontoret, café, mobilt nät), och autentiseringen sker via din republiken.se-email istället för IP-whitelist.
Återvändande kollega som redan har en nyckel? Har du onboardats tidigare och har en SSH-nyckel registrerad på servern behöver du INTE generera en ny. Hoppa direkt till steg 4 (Installera cloudflared). Steg 1, 2 och 3 är för dig som sätter upp från noll.
Vad betyder "kör" i guiden? När det står "kör" eller "klistra in" så menas alltid Terminal-appen på din Mac. Det är där alla kommandon i den här guiden ska köras.

Så öppnar du Terminal: tryck + Space, skriv Terminal, tryck Enter. Ett svart eller vitt fönster med text öppnas.

Samma fönster räcker hela vägen. Du behöver bara ETT Terminal-fönster för hela installationen (steg 1, 2, 4, 5, 6, 7). Stäng inte fönstret förrän du är på steg 8. Tips: ny flik i samma fönster öppnas med + T.
Vad betyder "kör" i guiden? När det står "kör" eller "klistra in" så menas alltid PowerShell på din dator. Alla kommandon i Windows-varianten är PowerShell-kommandon.

Så öppnar du PowerShell: tryck på Windows-tangenten, skriv Terminal (Windows 11) eller PowerShell (Windows 10), tryck Enter. Ett blått eller svart fönster öppnas.

Samma fönster räcker hela vägen. Du behöver bara ETT fönster för hela installationen (steg 1, 2, 4, 5, 6, 7). Stäng inte fönstret förrän du är på steg 8. Tips: ny flik öppnas med Ctrl + Shift + T.

Innehåll

  1. Generera en SSH-nyckel
  2. Skicka publika nyckeln till Jonatan
  3. Vänta på bekräftelse
  4. Installera cloudflared
  5. Konfigurera SSH
  6. Passphrase (hoppas oftast över)
  7. Första anslutning (email-OTP)
  8. Installera Claude Code
  9. Konfigurera Remote-mode i Claude Code
  10. Första testsession
  11. Vad du kan göra härnäst
  12. Felsökning

1Generera en SSH-nyckel

En SSH-nyckel är som ett digitalt pass, det bevisar att det är du som loggar in på servern, utan att du behöver komma ihåg ett lösenord.

Du genererar en nyckel på din dator. Den består av två filer:

Så här gör du:

  1. Öppna Terminal på din Mac ( + Space, skriv Terminal, Enter).
  2. Öppna PowerShell (Windows-tangenten, skriv Terminal eller PowerShell, Enter).
  3. Klistra in den här raden, ändra inget, och tryck Enter:
    ssh-keygen -t ed25519 -C "republiken-flexbert" -f ~/.ssh/republiken_ed25519
    ssh-keygen -t ed25519 -C "republiken-flexbert" -f $HOME\.ssh\republiken_ed25519
  4. Du får en fråga om passphrase.
    Välj ingen passphrase. När frågan kommer, tryck bara Enter två gånger så blir den tom. Sätt alltså inte något lösenord i det här steget. Det gör inloggningen sömlös och du undviker den vanligaste förvirringen, att man tror passphrasen är ett inloggnings-lösenord (det är den inte).

    Nyckeln är ändå skyddad: den ligger bara på din egen dator, och anslutningen kräver dessutom Cloudflare-inloggning med din @republiken.se-email.
  5. När det är klart ser du något i stil med:
    Your identification has been saved in /Users/dittnamn/.ssh/republiken_ed25519
    Your public key has been saved in /Users/dittnamn/.ssh/republiken_ed25519.pub
    The key fingerprint is:
    SHA256:... republiken-flexbert
    Your identification has been saved in C:\Users\dittnamn\.ssh\republiken_ed25519
    Your public key has been saved in C:\Users\dittnamn\.ssh\republiken_ed25519.pub
    The key fingerprint is:
    SHA256:... republiken-flexbert
Klart med steg 1. Två filer ligger nu i din hemmapp under .ssh/.
"ssh-keygen känns inte igen"? Då saknar din Windows OpenSSH-klienten. Slå på den: Inställningar → Appar → Valfria funktioner → Lägg till en funktion → OpenSSH Client. Öppna sen PowerShell igen och kör om kommandot.

2Skicka publika nyckeln till Jonatan

  1. I samma fönster, klistra in:
    pbcopy < ~/.ssh/republiken_ed25519.pub
    Get-Content $HOME\.ssh\republiken_ed25519.pub | Set-Clipboard
    Detta kopierar publika nyckeln till urklipp.
  2. Klistra in den i ett meddelande till Jonatan (Discord, Slack, mail, vad ni använder).

Den ser ut typ så här (cirka 80 tecken på en rad, börjar med ssh-ed25519 AAAA... och slutar med republiken-flexbert):

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH...långt...vY republiken-flexbert
OBS: Det är publika nyckeln (slutar på .pub) du delar. Aldrig den som inte slutar på .pub.

3Vänta på bekräftelse

Jonatan lägger till din nyckel på servern, skapar ditt konto, och sätter upp dina behörigheter (vilka kund-kanaler du har access till). Tar cirka 5 min.

När han bekräftat "klart", gå vidare till steg 4.

4Installera cloudflared

Cloudflared är en liten klient som bygger en säker tunnel mellan din dator och Republikens server via Cloudflare. Det är vad som låter dig SSH:a från vilket nätverk som helst utan att servern behöver vara öppen mot internet.

Du installerar via Homebrew. Om du inte har Homebrew, kör först:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Sen installera cloudflared (samma fönster):

brew install cloudflared

Verifiera installationen (samma fönster):

cloudflared --version

Förväntat: en versionsrad typ cloudflared version 2026.5.1.

På Windows laddar du ner cloudflared till en fast, enkel sökväg (C:\cloudflared\). Det undviker problem med mellanslag i Program Files och du slipper bråka med PATH. Klistra in hela blocket i PowerShell:

New-Item -ItemType Directory -Force C:\cloudflared | Out-Null
Invoke-WebRequest -Uri https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-windows-amd64.exe -OutFile C:\cloudflared\cloudflared.exe
Unblock-File C:\cloudflared\cloudflared.exe
C:\cloudflared\cloudflared.exe --version

Nedladdningen är cirka 30 MB och kan ta en stund. Förväntat på sista raden: en versionsrad typ cloudflared version 2026.6.0.

cloudflared är på plats.

5Konfigurera SSH

Du behöver tala om för SSH att anslutningar till ssh.republiken.cc ska routas genom cloudflared. Det görs i din SSH-config-fil.

Kör A först, klistra sen in B Steget är uppdelat så att tre vanliga fel undviks: glömd användarnamn-platshållare, staplade block, och osynliga specialtecken från indrag. Kör A före B och håll dig i samma fönster.
  1. A. Skriv ditt användarnamn (det Jonatan gav dig). Klistra in raden, tryck Enter, skriv namnet, Enter igen:
    read -p "Mitt anvandarnamn: " RUSER
  2. B. Klistra in hela blocket. Det fyller i din cloudflared-sökväg och ditt namn automatiskt, skriver configen ren (med >, så inget staplas om du kör om), och visar resultatet sist:
    mkdir -p ~/.ssh
    cat > ~/.ssh/config <<EOF
    Host ssh.republiken.cc
    ProxyCommand $(command -v cloudflared) access ssh --hostname %h
    User $RUSER
    IdentityFile ~/.ssh/republiken_ed25519
    IdentitiesOnly yes
    AddKeysToAgent yes
    UseKeychain yes
    EOF
    chmod 600 ~/.ssh/config
    cat ~/.ssh/config
  3. Kontrollera utskriften: User ska visa ditt namn (inte tomt och inte en kvarvarande platshållare), och ProxyCommand ska sluta på en riktig sökväg till /cloudflared (t.ex. /opt/homebrew/bin/cloudflared).
  1. A. Skriv ditt användarnamn (det Jonatan gav dig). Klistra in raden, tryck Enter, skriv namnet, Enter igen:
    $RUSER = Read-Host "Mitt anvandarnamn"
  2. B. Klistra in hela blocket. Det fyller i ditt namn automatiskt, skriver configen ren, och visar resultatet sist (sökvägen till cloudflared är fast eftersom steg 4 la den på C:\cloudflared\):
    $cfg = @"
    Host ssh.republiken.cc
    ProxyCommand C:/cloudflared/cloudflared.exe access ssh --hostname %h
    User $RUSER
    IdentityFile ~/.ssh/republiken_ed25519
    IdentitiesOnly yes
    "@
    New-Item -ItemType Directory -Force "$HOME\.ssh" | Out-Null
    Set-Content -Path "$HOME\.ssh\config" -Value $cfg -Encoding ascii
    Get-Content "$HOME\.ssh\config"
  3. Kontrollera utskriften: User ska visa ditt namn (inte tomt och inte en kvarvarande platshållare), och ProxyCommand-raden ska vara exakt ProxyCommand C:/cloudflared/cloudflared.exe access ssh --hostname %h.
Vad gör raderna?
ProxyCommand säger till SSH: "när jag ska ansluta till denna host, kör cloudflared först och låt den bygga tunneln". Den anges med full sökväg så att SSH säkert hittar den. User är ditt unix-användarnamn på servern (det du skrev i steg A). IdentityFile pekar på din SSH-nyckel. IdentitiesOnly yes säkerställer att SSH bara försöker den nyckeln.

6Passphrase (hoppas oftast över)

Följde du steg 1 och valde ingen passphrase (rekommenderat), så är det här steget inte aktuellt. Hoppa direkt till steg 7.

Bara om du ändå satte en passphrase: du blir då frågad om den vid varje anslutning, vilket inte funkar bra med Cloudflare-tunneln. Spara den så slipper du prompten.

På Mac, kör:

ssh-add --apple-use-keychain ~/.ssh/republiken_ed25519

Skriv din passphrase en gång. Sen sparas den i macOS Keychain och hämtas automatiskt, även efter omstart.

På Windows behöver ssh-agent-tjänsten vara igång. Öppna PowerShell som administratör (högerklicka på PowerShell → Kör som administratör) och kör:

Get-Service ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agent
ssh-add $HOME\.ssh\republiken_ed25519

Skriv din passphrase en gång. Sen laddas nyckeln automatiskt vid varje anslutning.

Enklast: har du ingen passphrase (rekommendationen i steg 1) behöver du inte göra något här alls.

7Första anslutning (email-OTP)

Nu är det dags att testa hela kedjan. I samma fönster, kör:

ssh ssh.republiken.cc

Vad som händer:

  1. cloudflared öppnar din webbläsare på en Cloudflare Access-prompt.
  2. Skriv in din email: DIN-EMAIL@republiken.se. Klicka Send code.
  3. Du får en kod till din email inom 10 sekunder. Skriv in den i webbläsaren.
  4. Webbläsaren visar "Success!". Stäng fliken.
  5. I terminalen får du en host-key-prompt första gången:
    Are you sure you want to continue connecting (yes/no/[fingerprint])?
    Skriv yes och tryck Enter.
  6. Du landar på Ubuntu-prompten: DITT-ANVÄNDARNAMN@repserver:~$

Skriv exit för att hoppa ur. Du har nu verifierat hela tunneln.

Cloudflare-tokenen är cachad i 30 dagar. Nästa gång du SSH:ar blir det ingen email-prompt, allt går seamless.

8Installera Claude Code

  1. Gå till claude.ai/code i din browser.
  2. Klicka på Download for Mac. Öppna nedladdad fil och dra Claude Code-ikonen till din Applications-mapp. Öppna appen, godkänn när Mac frågar om du litar på den.
  3. Klicka på Download for Windows. Kör installerprogrammet och öppna sen Claude Code. Får du en Windows-säkerhetsvarning ("Windows protected your PC"), klicka Mer info → Kör ändå.
  4. Logga in med inloggningsuppgifterna Jonatan skickar dig (delat Republiken-konto, alla kollegor delar samma).
Behandla trådar som intern visning: Du kan se vad andra Republiken-kollegor jobbat med via samma konto. De ser också vad du jobbar med. Inget för känsligt klient-material i prompts.

9Konfigurera Remote-mode i Claude Code

Claude Code har två lägen: lokal (jobbar med filer på din dator) och remote (jobbar med filer på Republikens server via SSH). Du kommer nästan alltid använda remote eftersom kund-data ligger på servern.

Lägg till Republikens server som SSH-host i Claude Code:

  1. I Claude Code, klicka på Code-fliken (uppe till vänster, bredvid Chat och Cowork).
  2. I huvudvyn syns en folder-pickerknapp längst ner. Klicka på den.
  3. I dropdown:n välj "Browse remote folder...".
  4. En dialog "Add SSH connection" öppnas. Fyll i exakt så här:
    Name Flexbert (eller vad du vill, bara för UI:n)
    SSH Host ssh.republiken.cc
    SSH Port (lämna tom, använder default 22)
    Identity File (Private Key) (lämna tom, Claude Code läser din SSH-config automatiskt)
    Klicka Add SSH connection.
  5. Claude Code använder SSH-config-blocket du satte i steg 5, så ProxyCommand + IdentityFile + User följer med automatiskt. Ingen extra konfig behövs i Claude Code.
  6. Du landar i en folder-vy på remote-servern. Du ser bara mappar du har access till (Linux-permissions bestämmer det automatiskt).

Pick:a en kanal att jobba i:

  1. Navigera till Claude-code-sessions/kundkanaler/<klient>/ (t.ex. femcare, cornhole, katshing).
  2. Klicka Open. Claude Code öppnar sessionen rotad i den mappen.
  3. I varje sådan mapp finns en CLAUDE.md som beskriver kanalen, den läses automatiskt och Claude förstår direkt vilken klient, vilka credentials, vilka regler som gäller.
Vad händer "under huven"? Claude Code på din dator kör Bash, Read, Write osv över SSH som unix-user DITT-ANVÄNDARNAMN på servern. Filer du läser och redigerar lever på remote, inte på din dator. Allt isoleras automatiskt, du kan ALDRIG av misstag läsa eller skriva i en kanal du inte är tilldelad.

10Första testsession

  1. Öppna Claude Code. Skapa en ny session i en kund-kanal du har access till (t.ex. femcare).
  2. Skriv: "Använd mcp__nanoclaw__list_channels för att visa vilka kanaler jag har access till"
  3. Claude ska svara med en lista som inkluderar dina tilldelade kund-kanaler + din egen kollega-kanal (ditt förnamn).
Om listan dyker upp, allt funkar! Du är inkopplad på Flexberts hjärna och kan börja jobba.

Testa också:

11Vad du kan göra härnäst

Några exempel på prompts som funkar bra:

Pro-tip: Claude ärver Flexberts CLAUDE.md för varje kanal, så stil, ton och regler är samma som när du chattar med honom via Discord. Inget att lära om.

Felsökning

"Permission denied (publickey)" när jag SSH:ar

Jonatan har antingen inte lagt till din nyckel än, eller så är fel IdentityFile specificerad i din SSH-config. Verifiera att nyckelfilen finns:

ls -la ~/.ssh/republiken_ed25519*
Get-ChildItem $HOME\.ssh\republiken_ed25519*

Om filen saknas, kör om steg 1. Om filen finns men auth failar, fråga Jonatan om han har lagt till din publika nyckel på servern.

"ProxyCommand failed" eller "cloudflared: command not found / is not recognized"

SSH hittar inte cloudflared. Kör om hela blocket i steg 5 B, det fyller i full sökväg automatiskt. Kontrollera sen med cat ~/.ssh/config att ProxyCommand-raden pekar på en riktig sökväg som slutar på /cloudflared. Kontrollera att filen finns: C:\cloudflared\cloudflared.exe --version. Får du fel där, kör om nedladdnings-blocket i steg 4. Kontrollera sen med Get-Content $HOME\.ssh\config att ProxyCommand-raden pekar på exakt C:/cloudflared/cloudflared.exe.

"UNPROTECTED PRIVATE KEY FILE" eller "bad permissions" på Windows

Windows OpenSSH vägrar använda en nyckel som fler än du har access till (händer typiskt om nyckeln kopierats från en annan plats). Strama åt rättigheterna så bara ditt konto kommer åt den:

icacls $HOME\.ssh\republiken_ed25519 /inheritance:r /grant:r "$($env:USERNAME):(R)"

Försök sen ansluta igen.

"Bad configuration option" eller konstiga tecken i config-felet

När man klistrar in via chatt eller ett dokument kan vanliga mellanslag bli osynliga specialtecken som SSH inte tolkar. Kör om hela blocket i steg 5 B (det är skrivet utan indrag just för att undvika detta). På Windows, se till att du körde Set-Content ... -Encoding ascii (det ingår i blocket) så att filen inte får osynliga BOM-tecken. Kvarstår det: öppna config-filen i en enkel texteditor (nano ~/.ssh/confignotepad $HOME\.ssh\config), radera allt, och skriv in raderna för hand.

Den frågar efter ett "password" eller "passphrase" när jag ansluter

Frågar den efter passphrase är det din SSH-nyckels passphrase, inte ett inloggnings-lösenord. Rekommendationen är att inte ha någon (skapa om nyckeln i steg 1 med tom passphrase) eller spara den (steg 6) så slipper du prompten. Det är ALDRIG serverns lösenord du ska skriva, inloggningen sker med nyckeln.

"'ssh' is not recognized" eller "'ssh-keygen' is not recognized"

Windows OpenSSH-klienten är inte påslagen. Slå på den: Inställningar → Appar → Valfria funktioner → Lägg till en funktion → OpenSSH Client. Öppna sen PowerShell igen.

Browser-prompten dyker inte upp vid första anslutning

Cloudflared kan ha problem med att öppna webbläsaren automatiskt. Kopiera URL:en som visas i terminalen och klistra in i din webbläsare manuellt.

Email-koden från Cloudflare kommer inte

Kolla skräppost. Om den inte kommer alls, verifiera att din email (DIN-EMAIL@republiken.se) verkligen slutar på @republiken.se (policy:n släpper bara igenom den domänen). Fråga Jonatan om du tror policy:n behöver justeras.

Claude Code säger "Connection failed" när jag försöker Browse remote folder

Verifiera först att ssh ssh.republiken.cc funkar i terminalen. Om det funkar i terminalen men inte i Claude Code, starta om Claude Code helt (+Qstäng fönstret helt) och försök igen. Den läser din SSH-config vid uppstart.

"Tunnel disconnected" eller liknande efter en stund

Cloudflare-tokenen kan ha expirerat (efter 30 dagar). Kör en SSH-test i terminalen:

ssh ssh.republiken.cc

Då triggas en ny browser-OTP-prompt. Logga in, sen funkar Claude Code igen.

Jag är på ett nätverk där Cloudflare blockeras

Mycket sällsynt, men möjligt på vissa restriktiva företagsnätverk. Försök från mobilt nät eller annat nätverk. Om problemet kvarstår, ping:a Jonatan.

Senast uppdaterad: 2026-06-12 (Windows: fast cloudflared-sökväg C:\cloudflared, slopat winget-beroende)