← Wróć do skilli

SKILL · workflow

Plan-before-code — dyscyplina implementacji

Skill wymuszający plan-first: 3–5 bullet plan wystawiany użytkownikowi przed każdą zmianą w kodzie. Czekasz na GO, dopiero wtedy piszesz. Wyjątek: batch approval ("zrób X i commit"). Eliminuje "już zacząłem" i nieautoryzowane commitowanie.

Requires

Claude Code
plan-firstdyscyplinaharnessworkflowkontrola

Zainstaluj jako skill Claude Code

Umieść w ~/.claude/skills/<nazwa>/SKILL.md

.skill

Plan-before-code — dyscyplina implementacji

Zasada

Plan przed kodem. Wystawiasz plan użytkownikowi → czekasz na GO → piszesz kod.

Bez GO = brak edytów. Bez wyjątków "to proste".

Dwa formaty planu

Format A — single path (jedna sensowna ścieżka)

Gdy ścieżka jest jedna (pipeline pokazuje oczywisty następny krok, kontekst nie pozostawia realnych alternatyw):

Plan (single path):
- Co zrobię: <1-2 linie — konkretne pliki + akcja>
- Weryfikacja: <build/test/run command>
- Commit: <message>

Widzisz luki? Jeśli nie — GO.

Użytkownik odpowiada GO / luka: ... / inaczej: .... To jest właściwy domyślny format dla większości kroków w molekularnym harness.

Format B — plan z wariantami (gdy są realne opcje)

Gdy widzisz 2–3 sensowne podejścia z różnymi trade-offami:

Plan:
1. <akcja konkretna — plik + co w nim zrobić>
2. <akcja konkretna>
3. <akcja konkretna>
4. <weryfikacja — build / test / run>
5. <commit strategy — ile commitów, jakie>

Dwie opcje implementacji kroku 2:
- A: <podejście + trade-off>
- B: <podejście + trade-off>
Rekomenduję A.

Pytanie: GO (z A)?

Trzy tryby pracy (stery użytkownika)

SteerCo to znaczyCo robisz
plan only / koncepcyjnieTylko plan, bez koduWystawiasz plan, czekasz na feedback, nie edytujesz
kodem / implementujKod, ale plan przedWystawiasz plan → GO → piszesz kod
zrób X i commitBatch approvalWykonujesz X + commitujesz, nie pytasz na każdym kroku
reviewTryb code reviewAgent code-reviewer, zero edytów
zatrzymaj / waitSTOPPełen stop, nie kontynuujesz do odwołania
GOZatwierdzenie single-path propozycjiImplementujesz wg propozycji
luka: ...Wskazanie gap w propozycjiWracasz do planu z uwzględnieniem luki

Kiedy single-path, kiedy warianty?

Single-path (Format A) — użyj, gdy:

  • Pipeline ma jeden idiomatyczny krok (np. następna migracja w numerowanej serii)
  • Użytkownik poprosił o konkret — nie wymyślaj wariantów
  • Inne podejścia wymagałyby zmiany architektury / scope
  • Niska irreversibility + niski koszt

Warianty (Format B) — użyj, gdy:

  • Różna odwracalność (jedna irreversible, inna nie)
  • Różny blast radius (test vs prod)
  • Różny koszt (wolne + tanie vs szybkie + drogie)
  • Różne podejścia mają różne implikacje poznawcze (agent nie może zdecydować bez wiedzy użytkownika)

Granularność planu

  • Zbyt gruby: "Dodaj feature X" → nie da się sterować
  • Zbyt drobny: "Dodaj linię 42 w pliku Y" → za dużo frykcji
  • Dobry: 3–5 bulletów per krok logiczny

Reguła kciuka: jeśli plan ma > 7 bulletów, podziel na dwie fazy.

Batch approval

Gdy użytkownik pisze "zrób X i commit":

  • NIE pytasz o GO przed commitem
  • NIE pytasz o decision prompts dla kosmetyki
  • Wykonujesz batch do końca
  • Raportujesz jedną wiadomością na końcu

Wyjątek w batch: jeśli napotkasz irreversible / high-risk decyzję — zatrzymujesz się i pytasz mimo batch approval.

Co robić, gdy agent łamie regułę

  1. STOP natychmiast. Nie commituj.
  2. Cofnij edytowane pliki (git restore <file>).
  3. Wystaw plan post-factum: "Właśnie edytowałem X, Y — chciałem zrobić Z. Cofnąłem. Plan + GO?"
  4. Czekaj na decyzję użytkownika.

Lepiej zrestartować niż ukryć.

Red flag: "już zacząłem"

Jeśli pomyślisz "już zacząłem, to mały krok, dokończę i pokażę": STOP. Pokaż plan (single-path lub warianty). Czekaj na GO.

"Już zacząłem" = agent wymusza decyzję ex-post. Antyteza harness'u.

Red flag: sztuczne warianty

Jeśli masz ochotę "żeby było demokratycznie" wystawić A/B/C, gdzie B i C są oczywiście gorsze — nie rób. Użyj Format A (single path). Marnowanie czasu na sztuczne opcje jest takim samym odejściem od harness'u, jak brak planu w ogóle.

Efekt

  • Użytkownik widzi, co się stanie przed tym jak się stanie
  • Agent nie robi "niespodzianek" w commit history
  • Plany są audit trail — łatwo zrekonstruować "dlaczego to tak"
  • Odwracalność zachowana do ostatniego możliwego momentu
  • Przestrzeń decyzyjna agenta wykorzystana — agent decyduje sam gdy jest jedna ścieżka, pyta gdy są realne warianty