setup-wsl-dev-environment
정보
이 Claude Skill은 Windows에서 WSL2 개발 환경 설정을 자동화하며, 셸 구성, 필수 도구(Git, SSH, Node.js, Python) 및 크로스 플랫폼 경로 관리를 포함합니다. 새 Windows 머신을 개발용으로 설정하거나, 처음으로 WSL2를 구성하거나, 기존 WSL 설치에 도구를 추가할 때 사용하세요. Windows와 WSL 간의 통합된 워크플로우를 손쉽게 구축할 수 있습니다.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/setup-wsl-dev-environmentClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
name: setup-wsl-dev-environment description: > Richtet eine WSL2-Entwicklungsumgebung unter Windows ein, einschliesslich Shell- Konfiguration, wesentlicher Werkzeuge, Git, SSH-Schluessel, Node.js, Python und plattformuebergreifendem Pfadmanagement. Verwenden bei der Einrichtung eines neuen Windows-Rechners fuer die Entwicklung, der erstmaligen Konfiguration von WSL2, dem Hinzufuegen von Entwicklungswerkzeugen zu einer bestehenden WSL-Installation oder der Einrichtung plattformuebergreifender Arbeitsablaeufe mit WSL und Windows. locale: de source_locale: en source_commit: 6f65f316 translator: claude-opus-4-6 translation_date: 2026-03-16 license: MIT allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: general complexity: intermediate language: multi tags: wsl, windows, linux, development, setup
WSL-Entwicklungsumgebung einrichten
Vollstaendige WSL2-Entwicklungsumgebung fuer plattformuebergreifende Arbeit konfigurieren.
Wann verwenden
- Einrichtung eines neuen Windows-Rechners fuer die Entwicklung
- Erstmalige Konfiguration von WSL2
- Hinzufuegen von Entwicklungswerkzeugen zu einer bestehenden WSL-Installation
- Einrichtung plattformuebergreifender Arbeitsablaeufe (WSL + Windows-Tools)
Eingaben
- Erforderlich: Windows 10/11 mit WSL2-Unterstuetzung
- Optional: Bevorzugte Linux-Distribution (Standard: Ubuntu)
- Optional: Einzurichtende Sprachen (Node.js, Python, R)
- Optional: Zusaetzliche Werkzeuge (Docker, tmux, fzf)
Vorgehensweise
Schritt 1: WSL2 installieren
In PowerShell (Administrator):
wsl --install
wsl --set-default-version 2
Wenn aufgefordert, neu starten. Ubuntu wird standardmaessig installiert.
Erwartet: Nach dem Neustart zeigt wsl --list --verbose die Distribution unter WSL Version 2 laufend. Der Befehl wsl oeffnet eine Linux-Shell.
Bei Fehler: Falls die WSL2-Installation fehlschlaegt, die Windows-Funktionen "Virtual Machine Platform" und "Windows-Subsystem fuer Linux" manuell ueber optionalfeatures.exe aktivieren. Bei aelteren Windows-10-Builds ist moeglicherweise ein Kernel-Update von Microsoft erforderlich.
Schritt 2: WSL-Ressourcenlimits konfigurieren
~/.wslconfig im Windows-Home-Verzeichnis erstellen:
[wsl2]
memory=8GB
processors=4
localhostForwarding=true
Erwartet: Die Datei .wslconfig befindet sich im Windows-Benutzerverzeichnis (z.B. C:\Users\Name\.wslconfig). Nach Ausfuehren von wsl --shutdown und Neustart von WSL werden die Ressourcenlimits angewendet.
Bei Fehler: Falls die Konfiguration keine Wirkung hat, pruefen ob die Datei am richtigen Ort liegt (Windows-Home, nicht WSL-Home). wsl --shutdown ausfuehren und WSL neu starten, damit Aenderungen wirksam werden.
Schritt 3: Aktualisieren und Grundlegendes installieren
sudo apt update && sudo apt upgrade -y
sudo apt install -y \
build-essential \
curl \
wget \
git \
git-lfs \
vim \
htop \
tree \
jq \
ripgrep \
fd-find \
unzip \
zip
Nuetzliche Aliase erstellen:
echo 'alias fd="fdfind"' >> ~/.bashrc
Erwartet: Alle Pakete werden fehlerfrei installiert. Befehle wie git --version, jq --version, rg --version und tree werden erfolgreich ausgefuehrt.
Bei Fehler: Falls apt install fehlschlaegt, zuerst sudo apt update ausfuehren, um die Paketlisten zu aktualisieren. Fuer nicht gefundene Pakete pruefen, ob die Ubuntu-Version diese unterstuetzt, oder aus alternativen Quellen installieren (z.B. snap, cargo oder manuelle Installation).
Schritt 4: Git konfigurieren
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
git config --global init.defaultBranch main
git config --global core.autocrlf input
git config --global color.ui auto
git config --global core.editor vim
Erwartet: git config --list zeigt den korrekten Benutzernamen, die E-Mail, den Standard-Branch (main), autocrlf (input) und Editor-Einstellungen.
Bei Fehler: Falls Einstellungen nicht uebernommen werden, pruefen ob --global verwendet wurde (nicht --local, das nur fuer das aktuelle Repository gilt). Sicherstellen, dass ~/.gitconfig die erwarteten Eintraege enthaelt.
Schritt 5: SSH-Schluessel einrichten
ssh-keygen -t ed25519 -C "[email protected]"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
cat ~/.ssh/id_ed25519.pub
# Zu GitHub hinzufuegen: Einstellungen > SSH und GPG-Schluessel
Test: ssh -T [email protected]
Erwartet: ssh -T [email protected] gibt "Hi username! You've successfully authenticated." zurueck. Das SSH-Schluesselpaar existiert unter ~/.ssh/id_ed25519 und ~/.ssh/id_ed25519.pub.
Bei Fehler: Falls die Authentifizierung fehlschlaegt, pruefen ob der oeffentliche Schluessel zu GitHub hinzugefuegt wurde (Einstellungen > SSH und GPG-Schluessel). Pruefen ob ssh-agent laeuft und der Schluessel mit ssh-add -l geladen ist. Falls der Agent nicht laeuft, eval "$(ssh-agent -s)" zur ~/.bashrc hinzufuegen.
Schritt 6: Node.js installieren (ueber nvm)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
source ~/.bashrc
nvm install --lts
nvm use --lts
Erwartet: node --version und npm --version geben aktuelle LTS-Versionen zurueck. nvm ls zeigt die installierte Version als Standard markiert.
Bei Fehler: Falls nvm nach der Installation nicht gefunden wird, ~/.bashrc laden oder ein neues Terminal oeffnen. Falls das Installationsskript fehlschlaegt, es manuell herunterladen und nach Pruefung des Skriptinhalts ausfuehren.
Schritt 7: Python installieren (ueber pyenv)
# Build-Abhaengigkeiten installieren
sudo apt install -y make libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev libncursesw5-dev xz-utils \
tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
curl https://pyenv.run | bash
# Zur ~/.bashrc hinzufuegen
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc
pyenv install 3.12
pyenv global 3.12
Erwartet: python --version gibt Python 3.12.x zurueck. pyenv versions zeigt die installierte Version als global gesetzt.
Bei Fehler: Falls pyenv install mit Build-Fehlern fehlschlaegt, sicherstellen dass alle Build-Abhaengigkeiten aus dem apt install-Befehl installiert wurden. Fehlende Bibliotheken (insbesondere libssl-dev oder zlib1g-dev) sind die haeufigste Ursache fuer Python-Build-Fehler.
Schritt 8: Shell konfigurieren
Folgendes zur ~/.bashrc hinzufuegen:
# Verlauf
export HISTSIZE=10000
export HISTFILESIZE=20000
export HISTCONTROL=ignoredups:erasedups
shopt -s histappend
# Navigations-Aliase
alias ll='ls -alF'
alias la='ls -A'
alias ..='cd ..'
alias ...='cd ../..'
# Entwicklungspfade
export DEV_HOME="/mnt/d/dev/p"
alias dev='cd $DEV_HOME'
# Funktionen
mkcd() { mkdir -p "$1" && cd "$1"; }
# PATH-Erweiterungen
export PATH="$HOME/bin:$HOME/.local/bin:$PATH"
Erwartet: Nach Ausfuehren von source ~/.bashrc funktionieren alle Aliase (ll, la, .., dev), die Funktion mkcd erstellt Verzeichnisse und wechselt hinein, und $DEV_HOME zeigt auf das Entwicklungsverzeichnis.
Bei Fehler: Falls Aliase nicht verfuegbar sind, pruefen ob die Ergaenzungen zu ~/.bashrc hinzugefuegt wurden (nicht ~/.bash_profile oder ~/.profile). source ~/.bashrc ausfuehren, um ohne neues Terminal neu zu laden.
Schritt 9: Claude Code CLI einrichten
# Claude CLI zum PATH hinzufuegen (nach der Installation)
echo 'export PATH="$HOME/.claude/local/node_modules/.bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
# Pruefen
which claude
Erwartet: which claude gibt den Pfad zur Claude Code CLI-Binaerdatei zurueck (z.B. ~/.claude/local/node_modules/.bin/claude). claude --version gibt die installierte Version aus.
Bei Fehler: Falls claude nicht gefunden wird, pruefen ob der PATH-Export zu ~/.bashrc hinzugefuegt und geladen wurde. Pruefen ob Claude Code tatsaechlich unter ~/.claude/local/ installiert ist. Falls nicht installiert, zuerst den Claude Code-Installationsanweisungen folgen.
Schritt 10: Plattformuebergreifende Pfadreferenz
| Windows | WSL |
|---|---|
C:\Users\Name | /mnt/c/Users/Name |
D:\dev\projects | /mnt/d/dev/projects |
%APPDATA% | /mnt/c/Users/Name/AppData/Roaming |
Windows Explorer aus WSL oeffnen: explorer.exe .
Erwartet: Die Pfadkonvertionstabelle ist verstanden und getestet: Zugriff auf einen Windows-Pfad aus WSL funktioniert (z.B. ls /mnt/c/Users/), und explorer.exe . oeffnet den Windows Explorer im aktuellen WSL-Verzeichnis.
Bei Fehler: Falls /mnt/c/ nicht zugaenglich ist, pruefen ob WSL's Automount konfiguriert ist. /etc/wsl.conf auf [automount]-Einstellungen pruefen. wsl --shutdown ausfuehren und neu starten, falls Einhängepunkte veraltet sind.
Validierung
- WSL2 laeuft mit der korrekten Distribution
- Git mit korrekter Identitaet konfiguriert
- SSH-Schluessel zu GitHub hinzugefuegt und Verbindung verifiziert
- Node.js installiert und funktionsfaehig
- Python installiert und funktionsfaehig
- Shell-Aliase und -Funktionen funktionieren
- Claude Code CLI zugaenglich
Haeufige Stolperfallen
- Langsamer Dateizugriff auf
/mnt/: Haeufig genutzte Projekte im WSL-Dateisystem (~/) fuer bessere Performance speichern./mnt/fuer Projekte nutzen, die mit Windows-Tools geteilt werden. - Zeilenenden:
core.autocrlf=inputverhindert CRLF-Probleme. Editoren auf LF-Zeilenenden konfigurieren. - Berechtigungsprobleme: Dateien auf
/mnt/zeigen moeglicherweise falsche Berechtigungen. Zur/etc/wsl.confhinzufuegen:[automount]\noptions = "metadata,umask=22,fmask=11" - Windows Defender: WSL-Verzeichnisse vom Echtzeit-Scan ausschliessen fuer bessere Performance.
Verwandte Skills
configure-git-repository- ausfuehrliche Git-Repository-Einrichtungconfigure-mcp-server- MCP-Einrichtung benoetigt WSL-Umgebungwrite-claude-md- KI-Assistent fuer Projekte konfigurieren
GitHub 저장소
연관 스킬
llamaguard
기타LlamaGuard는 폭력 및 혐오 발언 등 6가지 안전 범주에서 LLM 입력과 출력을 조정하기 위한 Meta의 70-80억 파라미터 모델입니다. 94-95% 정확도를 제공하며 vLLM, Hugging Face 또는 Amazon SageMaker를 사용해 배포할 수 있습니다. 이 기술을 사용하여 AI 애플리케이션에 콘텐츠 필터링 및 안전 가드레일을 손쉽게 통합하세요.
cost-optimization
기타이 Claude Skill은 리소스 적정화, 태깅 전략, 지출 분석을 통해 개발자들이 클라우드 비용을 최적화할 수 있도록 지원합니다. AWS, Azure, GCP에서 클라우드 비용을 절감하고 비용 거버넌스를 구현하기 위한 프레임워크를 제공합니다. 인프라 비용을 분석하거나, 리소스를 적정화하거나, 예산 제약을 충족해야 할 때 사용하세요.
quantizing-models-bitsandbytes
기타이 스킬은 bitsandbytes를 사용하여 LLM을 8비트 또는 4비트 정밀도로 양자화하며, 최소한의 정확도 손실로 50-75%의 메모리 감소를 달성합니다. 제한된 GPU 메모리에서 더 큰 모델을 실행하거나 추론을 가속화하는 데 이상적이며, INT8, NF4, FP4와 같은 형식을 지원합니다. 이 스킬은 HuggingFace Transformers와 통합되어 QLoRA 학습 및 8비트 옵티마이저를 가능하게 합니다.
dispatching-parallel-agents
기타이 Claude Skill은 3개 이상의 독립적인 문제를 동시에 조사하고 해결하기 위해 다중 에이전트를 배치합니다. 공유 상태나 의존성 없이 해결 가능한 무관련 장애 시나리오에 맞게 설계되었습니다. 핵심 기능은 병렬 문제 해결로, 각 독립 문제 영역마다 하나의 에이전트를 할당하여 효율성을 극대화합니다.
