Öncelikle eğitim konusunu seven insanlar için en başa yazıyorum. Eğitim konusu gelsin istiyorssanız eğitim konusu artsın yazın yoruma böylece eğitim konularını tekrar sizlerle paylaşmak isterim.

Bu makale özellikle WSL2 ortamında OpenClaw'ı yapılandırma sürecinin tamamını ayrıntılı olarak ele almaktadır.

Bir – WSL2 Temel Ortam Kurulumu


Kurulum basit görünüyor ama birçok ön koşul ve yaygın hata var. Baştan alalım.1.1 Ön Koşullar KontrolüGereksinimler:
  • Windows 10 sürüm 2004 (Build 19041) veya üstü / Windows 11
  • 64-bit sistem
  • BIOS'ta sanallaştırma açık (VT-x / AMD-V)
Kontrol et: Görev Yöneticisi → Performans → CPU → Sağ altta "Sanallaştırma: Etkin" yazmalı.Açık değilse BIOS'a gir:
  • Bilgisayarı yeniden başlat, açılırken F2 / Del / F10 (markaya göre değişir) tuşuna bas
  • Intel Virtualization Technology veya SVM Mode → Enabled yap
  • Kaydet ve çık
1.2 Windows Özelliklerini Etkinleştir
Yönetici olarak PowerShell aç, sırayla çalıştır:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Mutlaka bilgisayarı yeniden başlat! (Yapılmazsa sonraki adımlar patlar.)

1.3 WSL Kernel Güncelle & Varsayılan Versiyon AyarıYeniden başlatıldıktan sonra yönetici PowerShell'de:

wsl --update
 wsl --set-default-version 2
Eğer wsl --update hata verirse: Microsoft sitesinden "WSL2 Linux kernel update package" indirip kur. Türkiye'de yavaşsa "WSL2 kernel güncelleme paketi" diye ara, mirror'lar var.

1.4 Debian Kurulumu

wsl --list --online   # Mevcut dağıtımları gör
wsl --install -d Debian


Kurulum bitince Debian terminali açılır, kullanıcı adı + şifre belirle.Eğer takılırsa (ağ sorunu):
  • Microsoft Store'dan "Debian" ara ve kur
  • Veya: wsl --install -d Debian --web-download
Doğrula:

wsl -l -v
# Çıktı şöyle olmalı:
# NAME STATE VERSION
# Debian    Running         2
Eğer VERSION 1 ise:

wsl --set-version Debian 2
1.5 Debian'a İlk Girişte Temel Ayarlar

# Debian kaynaklarını Türkiye mirror'a çevir
sudo sed -i 's/deb.debian.org/mirrors.itu.edu.tr/g' /etc/apt/sources.list

# Güncelle ve yükselt
sudo apt update && sudo apt upgrade -y

# Temel araçlar
sudo apt install -y curl wget git build-essential
1.6 .wslconfig Ayarı (WSL'in öldürülmesini önle)

Windows'ta C:UsersKullanıcıAdın.wslconfig oluştur (yoksa yeni dosya), içine:
[wsl2]
autoMemoryReclaim=disabled
Neden?
Windows RAM azaldığında WSL'i zorla temizliyor → OpenClaw gateway kopuyor. Bunu kapatınca çok daha stabil.
Değişiklik sonrası:
wsl --shutdown
wsl -d Debian
1.7 systemd Etkinleştir
OpenClaw gateway için şart (arka plan servisi)./etc/wsl.conf dosyasına ekle:
[boot]
systemd=true
WSL yeniden başlat. Doğrula:

systemctl --user status   # user slice çalışıyor olmalı
İki – Node.js ve OpenClaw Kurulumu


2.1 Node.js Kurulumunvm ile önerilen:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install 24
node --version   # v24.x olmalı
2.2 npm Global Yolunu Ev Dizinine Taşı (sudo'suz kurulum)
mkdir -p ~/.npm-global
  npm config set prefix '~/.npm-global'


~/.bashrc'e ekle:
export PATH="$HOME/.npm-global/bin:$PATH"



source ~/.bashrc

2.3 OpenClaw Kurulumu

npm install -g openclaw
openclaw --version   # Başarılıysa versiyon gösterir (2026.2.x gibi)
2.4 İlk Yapılandırma
openclaw configure
İnteraktif sihirbaz:
  • Model sağlayıcı: API URL + key (OpenAI, Anthropic, custom)
  • Gateway modu: local
  • Port: 18789 varsayılan
Konfig: ~/.openclaw/openclaw.json


Üç – Ağ Proxy Ayarı (En Büyük Pit!)

WSL2'nin ağı Windows'tan ayrı → 127.0.0.1 yerine Windows'un iç IP'sini kullan.


3.1 Windows Host IP'sini BulWSL içinde:
cat /etc/resolv.conf | grep nameserver | awk '{print $2}'   # Genelde 172.x.x.1
  # Veya
  ip route show default | awk '{print $3}'


Örnek: 172.31.0.1 çıktıysa ve proxy'n SOCKS5 10808 portuysa → socks5://172.31.0.1:10808
Önemli: Windows proxy istemcinde (Clash/v2rayN) "LAN'a izin ver" açık olmalı!

3.2 OpenClaw Gateway'e Proxy Ver (Node.js SOCKS5 bilmiyor!)
Privoxy ile HTTP'ye çevir:
sudo apt install privoxy

/etc/privoxy/config sonuna ekle:
forward-socks5 / 172.31.0.1:10808 .

Başlat:
sudo systemctl enable --now privoxy   # 8118 portunda HTTP proxy dinler

3.3 Systemd Servisine Proxy Enjekte Et
~/.config/systemd/user/openclaw-gateway.service dosyasında [Service] altına ekle:
Environment="HTTP_PROXY=http://127.0.0.1:8118"
Environment="HTTPS_PROXY=http://127.0.0.1:8118"
 Environment="no_proxy=localhost,127.0.0.1,::1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16"
Uygula:
systemctl --user daemon-reload
systemctl --user restart openclaw-gateway
3.4 Git Proxy (Önemli Uyarı!)
git config --global http.proxy socks5://172.31.0.1:10808   # ✅ Doğru
# sakın socks5h:// kullanma → takılır!
Dört – Gateway'i Başlat & Arka Planda Tut

4.1 İlk Başlatma

openclaw gateway start
openclaw gateway status   # Runtime: running olmalı

4.2 Windows Yeniden Başladığında Otomatik Başlat
WSL otomatik başlamaz → Windows Görev Zamanlayıcı'ya script koy:Script oluştur:
C:UsersKullanıcıAdınscriptskeep-wsl-alive.ps1
İçine:
$running = wsl -l --running 2>$null | Select-String "Debian"
if (-not $running) {
wsl -d Debian -- sh -c "nohup sleep infinity &"
}
Görev Zamanlayıcı → Yeni Görev:
  • Tetikleyici: Her 2 dakikada bir
  • Eylem: powershell.exe -ExecutionPolicy Bypass -File C:UsersKullanıcıAdınscriptskeep-wsl-alive.ps1
  • "Kullanıcı oturum açmasa da çalıştır" tikle
Beş – Tarayıcı Ayarı (AI web'de gezinsin diye – Önerilir)

5.1 Kurulum

sudo apt install chromium xvfb
5.2 Chromium Wrapper Script

bash
mkdir -p ~/.local/bin
cat > ~/.local/bin/chromium-proxy << 'EOF'
#!/bin/sh
if ! pgrep -f "Xvfb :99" > /dev/null 2>&1; then
  Xvfb :99 -screen 0 1920x1080x24 -ac +extension GLX +render -noreset &
  sleep 1
fi
export DISPLAY=:99
exec /usr/bin/chromium --proxy-server="socks5://172.31.0.1:10808" "$@"
EOF
chmod +x ~/.local/bin/chromium-proxy
(:99 kullan çünkü :0 WSLg'ye ait, popup çıkar.)


5.3 openclaw.json'a Ekle
{
  "browser": {
    "executablePath": "/home/kullanıcıadın/.local/bin/chromium-proxy",
    "headless": false,
    "profiles": {
      "openclaw": {
        "cdpPort": 18800,
        "color": "#FF4500"
      }
    }
  }
}
5.4 Servise DISPLAY ekle

Service dosyasına:
Environment="DISPLAY=:99"
Altı – Özel Model Ayar
ıopenclaw.json'da models kısmına custom provider ekle (örnek Claude benzeri):
{
  "models": {
    "mode": "merge",
    "providers": {
      "benim-provider": {
        "baseUrl": "https://senin-api.com",
        "apiKey": "sk-xxx",
        "api": "anthropic-messages",
        "models": [
          {
            "id": "claude-opus-4-6",
            "name": "Claude Opus 4",
            "reasoning": false,
            "input": ["text", "image"],
            "contextWindow": 200000,
            "maxTokens": 32000
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "benim-provider/claude-opus-4-6"
      }
    }
  }
}
Yedi – Web Arayüzüne Eriş
http://127.0.0.1:18789/   # Windows tarayıcısında localhost:18789
İlk sefer token sorar → openclaw.json'da gateway.auth.token

Sekiz – Proxy Zinciri Özeti
  • Gateway (Node) → Privoxy (8118) → SOCKS5 (10808) → Windows proxy → İnternet
  • Chromium → Direkt SOCKS5 (10808) → Windows proxy
Dokuz – Yaygın Pitler ve Çözümler
  1. Gateway kopuyor → .wslconfig autoMemoryReclaim=disabled
  2. Git/clone takılıyor → socks5h yerine socks5 kullan
  3. Chromium Windows'ta popup açıyor → :99 ile Xvfb kullan
  4. Systemd user servisi başlamıyor → sudo loginctl enable-linger $(whoami)
  5. sudo şifre sorması → sudo visudo ile kullanıcıadın ALL=(ALL) NOPASSWD: ALL ekle (sadece WSL'de!)
On – Son Kontrol Listesi
  • systemctl --user status → çalışıyor
  • node --version → v24
  • openclaw --version
  • openclaw gateway status → running
  • curl -x http://127.0.0.1:8118 https://api.anthropic.com → bağlanıyor (hata verse bile timeout yok)
  • localhost:18789 açılıyor
  • Browser: openclaw browser start --browser-profile openclaw
Son Söz:


Üç ana şey:
  1. systemd etkin
  2. Proxy zinciri (Privoxy + socks5)
  3. WSL'i öldürmemek (.wslconfig + Windows timer)
Bunlar oturunca gerisi kolay. Takıldığın yerde hata mesajını yaz, beraber çözelim!