# **HOW-TO: Bezpieczne korzystanie z Vibe Coding (AI w kodowaniu)**
**Cel:** Ułatwić zespołowi pracę z AI, zachowując bezpieczeństwo, jakość i kontrolę nad kodem.
***
## **Dlaczego to ważne?**
Vibe Coding to trend, w którym opisujemy w języku naturalnym, co chcemy osiągnąć, a AI generuje kod. To przyspiesza pracę, ale niesie ryzyko:
*   **Wycieku danych** (np. klucze API w kodzie),
*   **Błędów logicznych**,
*   **Nieefektywności i kosztów** (np. brak monitoringu).
***
## **Zasady ogólne**
*   **Nigdy nie ujawniaj sekretów** – klucze API, hasła i dane wrażliwe trzymaj w zmiennych środowiskowych lub w menedżerach sekretów.
*   **AI = asystent, nie zastępstwo** – zawsze dodaj ludzką kontrolę.
*   **Dokumentuj zmiany** – ułatwia współpracę i audyt.
***
## **7 kroków – praktyczny przewodnik**
### **1. Zdefiniuj jasno wymagania**
*   Użyj ramy „5W” (Who, What, Where, When, Why).
*   Przykład:  
    *„Stwórz API do pobierania danych użytkownika z bazy MS SQL, z autoryzacją OAuth2”*.
***
### **2. Traktuj to jako dialog**
*   Pierwszy wynik AI = szkic, nie gotowy produkt.
*   Doprecyzuj polecenia, iteruj:
    *   *„Dodaj walidację danych wejściowych”*,
    *   *„Zoptymalizuj zapytania SQL”*.
***
### **3. Generuj i recenzuj kod**
*   Poproś AI o sprawdzenie bezpieczeństwa:
    *   *„Sprawdź kod pod kątem hardcodowanych sekretów i podatności XSS”*.
*   Dodaj własną weryfikację – AI może się mylić.
***
### **4. Sprawdź logikę i bezpieczeństwo**
*   Szukaj:
    *   Hardcodowanych sekretów,
    *   Nieskończonych pętli,
    *   Nieefektywnych zapytań (np. brak indeksów).
***
### **5. Testuj dokładnie**
*   AI może wygenerować:
    *   Testy jednostkowe,
    *   Scenariusze UAT.
*   Ale wykonaj też **ręczne testy eksploracyjne**:
    *   Sprawdź edge cases,
    *   Testuj wydajność.
***
### **6. Skonfiguruj monitoring**
*   Alerty billingowe (np. w chmurze),
*   Śledzenie błędów (np. Sentry),
*   Metryki wydajności (np. Prometheus, Grafana).
***
### **7. Wdrażaj i iteruj**
*   Rozwój to **ciągły proces**:
    *   Monitoruj,
    *   Poprawiaj,
    *   Aktualizuj.
***
## **Dodatkowe wskazówki**
*   **Bezpieczeństwo > szybkość** – nigdy nie pomijaj kontroli.
*   **Ustal standardy promptów** – np. wspólne szablony dla zespołu.
*   **Zapisuj wersje kodu** – Git + opis zmian.
***