═══════════════════════════════════════════════════════════ KONFIGURACJA NOWEGO MACBOOKA — VIBE CODER STACK Checklist krok po kroku, od włączenia do działającej stacji ═══════════════════════════════════════════════════════════ Wersja: 2026-05-01 Czas: ~2-3h pracy efektywnej + ~1.5h pasywne pobierania Pełen artykuł z kontekstem i lessons learned: ~/Downloads/macbook-vibe-coder-setup-2026-05-01.html KROK 0: PIERWSZE URUCHOMIENIE (15-30 min) ─────────────────────────────────────────────────────────── - Wybierz język polski lub angielski - Połącz z WiFi - Zaloguj się Apple ID — TYM SAMYM, którego używasz na głównej stacji - Włącz iCloud Keychain (zsynchronizuje hasła) - Pomiń Touch ID dla sudo na razie (standard fix czasem nie działa, niegroźne — sudo działa hasłem) - Settings → Privacy & Security → włącz FileVault (szyfrowanie dysku) KROK 1: XCODE COMMAND LINE TOOLS (~15 min download) ─────────────────────────────────────────────────────────── xcode-select --install (Idzie sobie w tle — ~3 GB. W międzyczasie możesz pobierać Cursora ze strony cursor.com.) KROK 2: HOMEBREW (~10 min) ─────────────────────────────────────────────────────────── /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Po instalacji wykonaj polecenia, które brew wypisze (dodanie do ~/.zprofile linii eval "$(/opt/homebrew/bin/brew shellenv)"). Następnie przeładuj shell: source ~/.zprofile KROK 3: CORE PACKAGES (~5 min) ─────────────────────────────────────────────────────────── brew install git gh node pnpm jq ripgrep fd htop wget tree coreutils libpq KROK 4: CURSOR + POLSKI LAYOUT + FONTY (~5 min) ─────────────────────────────────────────────────────────── 1. Pobierz Cursor z cursor.com, zainstaluj. 2. Otwórz Cursor → Cmd+Shift+P → wpisz: "Shell Command: Install 'cursor' command in PATH" 3. System Settings → Keyboard → Input Sources → Add → "Polski" (NIE QWERTZ — bo QWERTZ ma inny układ niż Polski Programisty, a ten standardowy "Polski" pozwala wpisać ż przez Option+Z). 4. Pobierz JetBrains Mono w wariancie latin-ext (Google Fonts), zainstaluj (Font Book → File → Add Fonts). 5. Cursor → Settings → Editor → Font Family → 'JetBrains Mono' 6. WAŻNE: fix kolizji Option+Z = ż (Cursor blokuje to dla Toggle Word Wrap): Cursor → Cmd+K Cmd+S → wpisz "toggle word wrap" → prawy klik na rezultacie → "Remove Keybinding" KROK 5: ZSHRC SETUP (~3 min) ─────────────────────────────────────────────────────────── echo 'setopt interactive_comments' >> ~/.zshrc echo 'export OLLAMA_KEEP_ALIVE=30m' >> ~/.zshrc source ~/.zshrc KROK 6: GIT CONFIG GLOBAL (~1 min) ─────────────────────────────────────────────────────────── git config --global user.name "Twoje Imię Nazwisko" git config --global user.email "twoj@email.com" git config --global init.defaultBranch main KROK 7: CLAUDE CODE CLI + LOGOWANIA (~10 min) ─────────────────────────────────────────────────────────── brew install claude-code gh auth login → wybierz GitHub.com, HTTPS, login through browser → SCOPES: dodaj admin:public_key (potrzebne w kroku 8 do dodania klucza SSH przez CLI) vercel login supabase login KROK 8: SSH KEY + DODANIE DO GITHUBA (~3 min) ─────────────────────────────────────────────────────────── ssh-keygen -t ed25519 -C "twoj@email.com" → Enter dla domyślnej ścieżki ~/.ssh/id_ed25519 → ustaw passphrase (lub Enter dla pustego) gh ssh-key add ~/.ssh/id_ed25519.pub --title "MacBook M4" # Test: ssh -T git@github.com → "Hi ! You've successfully authenticated..." KROK 9: KLONOWANIE PROJEKTÓW TIER A (~15 min) ─────────────────────────────────────────────────────────── mkdir -p ~/projekty cd ~/projekty # Wybierz 5-7 projektów z którymi REALNIE pracujesz w tym tygodniu. # Reszta — on demand, gdy faktycznie potrzebna. gh repo clone /projekt-1 gh repo clone /projekt-2 # ... etc # W każdym projekcie po sklonowaniu: cd projekt-1 pnpm install # albo: npm install / yarn install (zależy od lockfile) vercel env pull .env.local # jeśli projekt jest na Vercelu cd .. KROK 10: OLLAMA + LOKALNE MODELE (~30+ min download) ─────────────────────────────────────────────────────────── brew install ollama brew services start ollama ollama pull qwen3-coder:30b # ~18 GB, do kodzenia ollama pull qwen3.6:35b-a3b-q4_K_M # ~23 GB, do analizy # Test: ollama list → powinno pokazać oba modele ollama run qwen3-coder:30b "Napisz funkcję TS która sumuje tablicę" → cold start ~12 sek, kolejne wywołania natychmiast KROK 11: OLLAMA_KEEP_ALIVE = 30m (~5 min, BEZ PUŁAPEK) ─────────────────────────────────────────────────────────── # Tu są 3 pułapki opisane w artykule. Robimy WSZYSTKIE 3 fixy od razu. VERSION=$(brew list --versions ollama | awk '{print $2}') PLIST="/opt/homebrew/Cellar/ollama/$VERSION/homebrew.mxcl.ollama.plist" # (1) PlistBuddy zamiast plutil — bo plutil cicho NIE zapisuje # zagnieżdżonych dict (zwraca exit 0, ale nie wprowadza zmian): /usr/libexec/PlistBuddy -c \ "Add :EnvironmentVariables:OLLAMA_KEEP_ALIVE string 30m" "$PLIST" # (2) Edytuj w Cellar, KOPIUJ do LaunchAgents — bo brew services # restart silently NADPISUJE plik w LaunchAgents: cp "$PLIST" ~/Library/LaunchAgents/homebrew.mxcl.ollama.plist # (3) Bootout ze ŚCIEŻKĄ pliku, NIE label — bo z labelem launchd # zachowuje cache definicji plist, bootstrap odtwarza ze starej: launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/homebrew.mxcl.ollama.plist killall ollama 2>/dev/null launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/homebrew.mxcl.ollama.plist # Verify — powinno wypisać OLLAMA_KEEP_ALIVE=30m: ps eww $(pgrep -f "ollama serve") | tr ' ' '\n' | grep OLLAMA_KEEP_ALIVE # UWAGA: po każdym "brew upgrade ollama" katalog Cellar starej # wersji znika i edycja przepada. Trzeba PONOWIĆ ten krok. # Można zapisać te komendy jako ~/restore-ollama-keepalive.sh. KROK 12: SYNC Z GŁÓWNEJ STACJI (~5 min, jeśli masz drugą maszynę) ─────────────────────────────────────────────────────────── # NA GŁÓWNEJ STACJI: System Settings → General → Sharing → # Remote Login = ON # Test SSH (na MacBooku): ssh @ "hostname && date" → powinno zwrócić nazwę hostname + datę # Pierwszy sync ręcznie (skille + credentials): rsync -av @:~/.claude/skills/ ~/.claude/skills/ rsync -av @:~/.claude/.credentials-global.env ~/.claude/ rsync -av @:~/.claude/hooks/ ~/.claude/hooks/ rsync -av @:~/.claude/scripts/ ~/.claude/scripts/ # Pamięć Claude Code per projekt — patrz pełen skrypt # mobile-sync-pull.sh w repo Project Master (artykuł sekcja 9). KROK 13: CURSOR + WTYCZKA CLAUDE CODE (~5 min) ─────────────────────────────────────────────────────────── 1. Cursor → Cmd+Shift+P → "Cursor: Sign In" (Apple ID albo Google — możesz pominąć, Cursor działa też bez konta) 2. Extensions (Cmd+Shift+X w lewym sidebarze) → wpisz "Claude Code" → publisher: Anthropic → Install 3. Cmd+Shift+P → "Claude Code: Sign In" → otworzy browser → autoryzacja OAuth Anthropic → wykorzystuje Twoją subskrypcję (claude.ai / Pro) 4. File → Open Folder → wybierz główny projekt z ~/projekty/ 5. Cmd+Esc otwiera panel Claude Code → wpisz "wznów" → wtyczka odczyta najnowszy handoff i zaproponuje następny krok pracy ═══════════════════════════════════════════════════════════ GOTOWE. Mobilna stacja vibe codingu działa. ═══════════════════════════════════════════════════════════ CO ROBIĆ NA POCZĄTKU KAŻDEJ MOBILNEJ SESJI ─────────────────────────────────────────────────────────── cd ~/projekty/project-master bash .planning/macbook-setup/mobile-sync-pull.sh --sync-memory-all # Skrypt: pull wszystkich repo, rsync skilli i credentials z głównej # stacji, sync pamięci Claude Code dla wszystkich projektów, # pokaże najnowszy handoff jako start point. # Potem: Cursor → Cmd+Esc → "wznów". Praca leci dalej. OPCJONALNIE (można odpuścić, P3) ─────────────────────────────────────────────────────────── - Touch ID dla sudo (standard fix /etc/pam.d/sudo_local czasem nie działa na Sequoia, diagnoza odłożona) - Sprawdzenie wszystkich MCP serwerów we wtyczce Cursor (Cmd+Shift+P → "Claude Code: Show MCP Status") - Settings.json customizacje (additionalDirectories per maszyna) DEBUGGING — JEŚLI COŚ NIE DZIAŁA ─────────────────────────────────────────────────────────── - "Remote Login na głównej stacji nie zadziałał": macOS Sequoia bug — toggle nie zawsze startuje sshd. Fix: sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist Test: sudo lsof -i :22 → powinno pokazać LISTEN - "OLLAMA_KEEP_ALIVE nie pojawia się w env procesu": sprawdź kolejność z kroku 11 — wszystkie 3 pułapki muszą być zaadresowane. Najczęstszy błąd: bootout z labelem zamiast ze ścieżką pliku. - "ssh konsumuje stdin pętli while read": użyj read -ru3 + done 3<<< "$VAR" oraz ssh -n (artykuł sekcja 10, bonus bash gotcha) SKRYPTY GOTOWE DO POBRANIA Z REPO ─────────────────────────────────────────────────────────── W repo Project Master, katalog .planning/macbook-setup/: - clone-priority-repos.sh — klonowanie batch z auto-detect deps - mobile-sync-pull.sh — pre-work sync (4 kroki: pull, skille, pamięć, najnowszy handoff) - restore-ollama-keepalive.sh — reaplikacja kroku 11 po brew upgrade ═══════════════════════════════════════════════════════════ Autor: Dariusz Ciesielski | aiwbiznesie.online Źródło: 10-godzinna sesja konfiguracyjna z 1 maja 2026 ═══════════════════════════════════════════════════════════