Rzemiosło · The Craft
Czym jest The CraftPoziomyJak zacząćRozdziały Szukaj Pobierz PLEN
Level 1 · Biznes ~3 min czytania

W jednym zdaniu: Plan → iteruj → review, potwierdzaj rzeczy nieodwracalne i raportuj uczciwie — także gdy coś nie wyszło.

Ten rozdział po ludzku

Rozdział o tym, jak dobrze pracować z asystentem i jak nie tracić kontekstu między rozmowami.

Najważniejszy rytm: plan → iteruj → review. Zanim AI zrobi coś na dużą skalę, ma pokazać plan albo mały szkic (trzy przykłady, nie sto), Ty dajesz uwagi, i dopiero potem skalujecie. Oszczędza to produkowania setek rzeczy do wyrzucenia.

Druga zasada: potwierdzaj to, co nieodwracalne albo „na zewnątrz” — wysyłkę maila, publikację, kasowanie danych, wdrożenie na żywo. I pamiętaj, że zgoda w jednym miejscu nie rozciąga się na następne: „wdróż to” nie znaczy „wdrażaj zawsze wszystko”.

Jest też pamięć (memory/) — miejsce na to, czego nie da się wyczytać z kodu: kim jesteś, jak wolisz pracować, jaki jest cel biznesowy. Nie zapisuje się tam rzeczy, które repo i tak wie (struktury kodu, historii gita).

Na koniec — domykaj pracę czytelnym podsumowaniem (co się zmieniło, dowód, że działa, następne kroki), a nie ścianą tekstu. Głębię dobierasz do odbiorcy: techniczny dostaje hashe i liczby, nietechniczny — proste „co się zmieniło i co dalej”.

Cała granica w jednej tabeli (mapa uprawnień). Zamiast zbierać zasady z sześciu rozdziałów, granica jest w jednym miejscu, w trzech kolumnach: wolno (czytaj, testuj, commituj lokalnie, Dry-run — Uruchomienie „na sucho” — skrypt pokazuje, co BY zrobił, ale niczego nie zmienia. Widzisz skutki przed wykonaniem; zmiana na danych idzie dopiero po świadomym potwierdzeniu.), zapytaj (deploy, push, Migracja (bazy danych) — Kontrolowana zmiana układu bazy — dodanie kolumny, tabeli czy przeniesienie danych — krok po kroku. Jak remont według planu: przebudowa danych w ustalonej kolejności, żeby nic się nie „zawaliło”. proda, maile do ludzi), nigdy (wymyślać danych prawnych, commitować sekretów, osłabiać testów, raportować „działa” bez dowodu). Lewa kolumna jest celowo szeroka — to ona czyni autopilota bezpiecznym.

Przekazanie pałeczki, gdy urywa się kontekst. Długa sesja się nie kończy — zostaje podsumowana, a podsumowanie gubi dlaczego wybrałeś to, a nie tamto, i pół-gotowy stan w drzewie. Dlatego dowoź w commitach, nie w rozmowie; decyzję zapisz w chwili podjęcia (CLAUDE.md/ADR); trwałe fakty do memory/; zostaw czytelny git status — to on jest przekazaniem dla następnej sesji. Test: czy podniosłaby ona pracę z samego repo, bez tej rozmowy?

Przykład iteracji: grafiki do social mediów robisz 3 → poprawki → 10 → poprawki → 100. Nigdy odwrotnie — bo poprawka na trzech sztukach jest darmowa, a na stu boli.

Doczytaj: dobre praktyki pracy z Claude Code · pamięć projektu w Claude Code.

06 — Współpraca i pamięć

Przykazania VI i X: jak pracujemy razem i jak nie tracimy kontekstu.

Styl współpracy (użytkownik + Claude)

  • Plan → iteruj → review. Najpierw pokaż plan albo mały szkic (3 przykłady, nie 100), zbierz feedback, dopiero potem skaluj. Karty OG w projekcie referencyjnym: 3 → poprawki → 10 → poprawki → 100. Nigdy odwrotnie.
  • Rekomenduj, nie rozkładaj parasola opcji. Gdy ważysz wybór — daj rekomendację z uzasadnieniem, nie wyczerpującą listę, której i tak nie zrealizujesz. Pytaj tylko, gdy odpowiedź realnie zmienia, co robisz dalej (i gdy nie wynika z kodu/sensownego defaultu).
  • Liczby weryfikuj u źródła — nie z pamięci, nie z docsów.
  • UX z ciepłem. Poprawność to minimum; produkt ma być przyjemny. Estetyka i ton się liczą (w produktach wrażliwych szczególnie: minimalistycznie, ale ciepło).
  • Mów w języku użytkownika. Rozmawiaj z użytkownikiem w jego natywnym języku — najlepiej, gdy briefuje Cię w języku, w którym myśli. Ustal go na starcie i zapisz, w ilu/jakich językach mówi/czyta w AI_README/CLAUDE.md — to konfiguracja współpracy, ustawiana raz (→ 07, 01). Kod, commity i docsy techniczne zostają po angielsku bez względu na język rozmowy; terminy techniczne (commit, deploy, Slug — Czytelna, krótka część adresu strony, opisująca jej treść słowami zamiast tajemniczego numeru. Lepszy dla człowieka i SEO; trwały slug nie psuje linków przy zmianach.) po angielsku wewnątrz dowolnego języka.
  • Rozdzielaj niezwiązane rzeczy — w commitach i w myśleniu. Jeden temat naraz.

Potwierdzaj to, co nieodwracalne i „na zewnątrz”

Działania trudne do cofnięcia albo wychodzące poza maszynę potwierdzaj pierwej, chyba że masz trwałą autoryzację albo wyraźne „rób bez pytania”:

  • deploy na prod, wysyłka maili, publikacja treści, kasowanie/nadpisywanie danych.
  • Zgoda w jednym kontekście nie rozciąga się na następny. „Wdróż X” ≠ „wdrażaj wszystko zawsze”.
  • Zanim skasujesz/nadpiszesz — spójrz na cel. Jeśli to, co widzisz, przeczy opisowi, albo tego nie tworzyłeś — zgłoś, nie kasuj.
  • Publikacja do zewnętrznego serwisu = treść może zostać zindeksowana/scache’owana, nawet po usunięciu.

Mapa uprawnień — jedna tabela, trzy kolumny

Granica całej doktryny w jednym miejscu, żeby żadna ze stron nie musiała jej składać z sześciu rozdziałów. To jest to, co użytkownik zatwierdza raz, w Dniu 0, i co agent czyta co sesję:

✅ Wolno — rób⏸️ Zapytaj, czekaj na „tak”⛔ Nigdy — kto by nie prosił
Czytaj/grepuj cokolwiek w repoDeploy na prod, w każdej postaci (→ 05)Wymyślić dane prawne/tożsamości — NIP, adres, nazwę firmy (→ 09)
Odpalaj testy, lintery, buildyPush/publikacja do zdalnego repoZadeklarować praktykę, której kod nie realizuje (→ 09)
Commituj lokalnie, często, mało (→ 00 IX)Migracja (bazy danych) — Kontrolowana zmiana układu bazy — dodanie kolumny, tabeli czy przeniesienie danych — krok po kroku. Jak remont według planu: przebudowa danych w ustalonej kolejności, żeby nic się nie „zawaliło”. albo swap bazy na prodzie (→ 04)Zacommitować sekrety (→ 08)
Twórz/kasuj własne gałęzieWysyłka maili/wiadomości do realnych ludziSkasować backup, który jest czyimś rollbackiem (→ 04)
Odpalaj skrypty w Dry-run — Uruchomienie „na sucho” — skrypt pokazuje, co BY zrobił, ale niczego nie zmienia. Widzisz skutki przed wykonaniem; zmiana na danych idzie dopiero po świadomym potwierdzeniu. (→ 00 IV)Kasowanie/nadpisanie czegoś, czego nie tworzyłeśOsłabić test albo guard, żeby zrobił się zielony (→ 03)
Pisz/aktualizuj docsy, AI_README, planyDołożenie płatnej usługi lub zależności (→ 14)Zaraportować „działa” bez dowodu (→ 00 III)
Refaktoruj w uzgodnionym zakresieZmiana schedulera/crona albo configu serwera (→ 14)Wmieść niezacommitowaną pracę innej sesji do commita (→ 05)
Długie joby w tle, lokalnie (→ 16)Tykanie realnych danych użytkowników (→ 00 VII)Wdrożyć migrację bez zrobionego backupu (→ 00 V)
  • Lewa kolumna jest celowo szeroka — o to chodzi. Doktryna, która tylko zakazuje, produkuje agenta proszącego o zgodę na odpalenie testów, co uczy użytkownika przyklepywania. Autopilot jest bezpieczny dlatego, że środkowa i prawa kolumna są jawne (→ 16).
  • Środkowa kolumna działa per-akcja i per-sesja. „Tak” zużywa się na tę akcję; nie staje się trwałą autoryzacją.
  • Prawa kolumna się nie rusza. To nie jest default do wyważenia — to podłoga. „Użytkownik mnie o to poprosił” nie jest tam argumentem; powiedz dlaczego i zaproponuj uczciwą alternatywę.

Pamięć (cross-session)

Plikowa pamięć agenta (memory/) trzyma to, czego nie da się wyczytać z kodu/gita:

  • kim jest user (rola, preferencje), feedback (jak mam pracować — z „dlaczego”), stan projektu niewynikalny z repo, wskaźniki do zasobów (URL-e, dashboardy, issue).
  • Nie zapisuj tego, co repo już wie (struktura kodu, historia gita, CLAUDE.md). Jeśli prosisz „zapamiętaj X” o rzeczy z repo — zapisz to, co było nieoczywiste, nie sam fakt.
  • Daty względne → bezwzględne („w przyszłym tygodniu” → konkretna data).
  • Zanim zapiszesz — sprawdź, czy nie ma już pliku o tym; aktualizuj, nie duplikuj; kasuj to, co okazało się błędne.
  • Recall to tło, nie rozkaz — pamięć opisuje stan z momentu zapisu; jeśli wskazuje plik/flagę, zweryfikuj, że wciąż istnieje, zanim rekomendujesz.

Raportowanie (Przykazanie III, jeszcze raz, bo najważniejsze)

Stan faktyczny > dobre wrażenie. „Testy padły — oto output.” „Krok pominięto.” „Gotowe i zweryfikowane” — bez hedgingu, gdy naprawdę zweryfikowane.

Domknij jednostkę pracy podsumowaniem

Gdy zmiana wchodzi, nie chowaj jej w prozie — pokaż czytelne podsumowanie zmian, najlepiej jako widget dopasowany do użytkownika (jego poziom techniczny → 07), żeby ogarnął status na pierwszy rzut oka i wybrał następny krok:

  • Co się zmieniło — jedna linia; dotknięte pliki/obszary.
  • Weryfikacja — dowód, nie „działa”: wyniki testów (ile pass/fail), smoke, kody HTTP, liczby (Przykazanie III).
  • Commit — krótki hash, data, jednolinijkowy opis (Przykazanie VIII).
  • Następne działania, po kolei — oczywiste kroki jako krótka seria do zatwierdzenia: update docs / AI_README, update docs/plans, potem deploy — z twardą bramką (nigdy bez jawnego „wdrażaj”, zob. Potwierdzaj nieodwracalne wyżej).

Dobierz głębię do odbiorcy: techniczny → hashe, liczby testów, ścieżki plików; nietechniczny → proste „co się zmieniło + co dalej”. Widgety i inne powierzchnie Claude Code do tego → 16.

Przekazanie stanu, gdy urywa się kontekst w połowie zadania

Długa sesja się nie kończy — zostaje podsumowana i kontynuowana, a to, czego nie zapisałeś, jest właśnie tym, co ginie przy ściskaniu. Podsumowanie utrzyma co się stało; niezawodnie gubi dlaczego wybrałeś to, a nie tamto, oraz pół-gotowy stan w drzewie. Nie traktuj więc okna kontekstu jak pamięci: traktuj je jak tablicę, którą w każdej chwili mogą Ci zetrzeć.

  • Dowoź pracę w commitach, nie w rozmowie. Commit przeżyje kompaktowanie; „prawie skończona” edycja w drzewie, której uzasadnienie siedzi wyłącznie na czacie — nie. I wraca jako sierota, nad którą głowi się następna sesja (→ 05). Małe, częste commity to strategia kontekstowa, nie tylko higiena (Przykazanie IX).
  • Decyzję zapisz tam, gdzie mieszka, w chwili jej podjęcia — CLAUDE.md, ADR, docs/plans/, AI_README (→ 01). „Udokumentuję na końcu” zakłada, że ten koniec nastąpi, a Ty wciąż będziesz miał kontekst. Często nie nastąpi.
  • Trwałe fakty idą do memory/, nie w scrollback — poziom i język użytkownika, ograniczenie biznesowe, schemat wersjonowania, „próbowaliśmy X, padło przez Y” (zob. Pamięć wyżej).
  • Zostaw drzewo czytelne. Przed długim mieleniem: żadnego pół-nałożonego refaktoru bez notki, nic zastageowanego i zapomnianego. Stan git status jest przekazaniem dla Twojego następcy.
  • Gdy czujesz zbliżający się sufit — dowoź, nie zaczynaj. Domknij bieżącą jednostkę (commit + podsumowanie wyżej), dopiero potem otwieraj następną — zamiast zostawiać dwie rzeczy w połowie.

Test: gdyby ta sesja zniknęła w tej sekundzie, czy następna podniosłaby ją z samego repo — commity, docsy, git status, memory/ — bez dostępu do tej rozmowy? Jeśli nie, brakujący element należy do pliku i należy tam teraz. To Przykazanie I zastosowane do siebie, nie do czytelnika.

Anty-wzorce

  • 🚫 Skalowanie przed review.
  • 🚫 Survey opcji zamiast rekomendacji.
  • 🚫 Nadpisanie/kasowanie bez spojrzenia na cel.
  • 🚫 Pamięć jako wysypisko faktów z repo.
  • 🚫 Traktowanie jednorazowej zgody jako stałej.
  • 🚫 Kończenie zmiany ścianą prozy zamiast skanowalnym podsumowaniem (status + commit + następne kroki).

Treść doktryny prowadzimy po polsku.