com um clique
dev-compound
Dokumentowanie rozwiązanego problemu do bazy wiedzy docs/solutions/.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Dokumentowanie rozwiązanego problemu do bazy wiedzy docs/solutions/.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Automatyzacja testów E2E mobile przez Maestro CLI. Nawigacja, tap, scroll, gesty (swipe, long press, pinch), input, asercje, screenshoty na emulatorze iOS/Android. Deep linking, OAuth flow, biometry. Używaj przy 'testuj UI mobilne', 'zrób screenshot apki', 'agent-mobile', 'E2E mobile', weryfikacji checkboxów Weryfikacja: w fazie review.
Systematyczny audyt bezpieczeństwa dla React Native / Expo + Supabase + Edge Functions. Używaj przy review bezpieczeństwa, przed releasem, przy pracy z auth/authz, walidacją inputów, RLS policies, deep linkingiem, storage sekretów (SecureStore), WebView, OWASP (w tym Mobile Top 10).
Sentry error tracking i performance monitoring dla React Native (Expo) + Supabase Edge Functions. Aktywuje się przy pracy z błędami, monitoringiem, captureException, error boundary, śledzeniem błędów, diagnostyką, loggerem, Edge Functions, crash, native crash, awaria, wydajność, raportowanie błędów, exception, wyjątek, React Native, Expo.
Auth (Google/Facebook OAuth, email), Database (PostgreSQL, RLS policies, SECURITY DEFINER), Edge Functions, Realtime subscriptions. Uzywaj przy pracy z autentykacja, baza danych, migracjami, bezpieczenstwem.
Wytyczne UX/UI dla aplikacji mobilnych (Expo + React Native + NativeWind, ale stack-agnostic w pryncypiach). Platform conventions (iOS HIG vs Material 3), typografia natywna (SF Pro/Roboto, Dynamic Type, type scale), 8pt grid + safe areas, semantic colors + dark mode jako redesign, ikony (SF Symbols vs Lucide vs Material Symbols), motion i micro-interactions (Reanimated — aktualny major 4.x, wymaga New Architecture; 3.x legacy — easing, stagger), haptics + native gestures (expo-haptics, RNGH 3.x), stany loading/empty/error, formy + klawiatura mobilna, navigation patterns (tabs/drawer/stack/modal), bottom sheets i modale, listy (FlashList v2, swipe actions), accessibility (VoiceOver, TalkBack, Dynamic Type), pułapki AI-generowanego UI, teardowny premium apek (Things 3, Bear, Linear, Wellspoken), app icon i splash screen. Używaj przy projektowaniu ekranów mobilnych, budowie design system pod mobile, decyzjach iOS vs Android, "ekran wygląda tanio", "feels off na mobile", "native feel vs web feel", review designu
Walidacja i doprecyzowanie pomysłu przed planowaniem. Interaktywny dialog, pressure test, eksploracja podejść, requirements doc. Używaj przy "mam pomysł", "zróbmy brainstorm", "co myślisz o", "pomóż mi przemyśleć", "chcę zbudować", niejasny scope, wiele możliwych rozwiązań.
Baseado na classificação ocupacional SOC
| name | dev-compound |
| description | Dokumentowanie rozwiązanego problemu do bazy wiedzy docs/solutions/. |
| argument-hint | [opcjonalnie: opis problemu lub --full] |
Uwaga: Aktualny rok to 2026. Używaj tego przy datowaniu dokumentów.
Przechwytuje rozwiązania problemów gdy kontekst jest świeży, tworząc ustrukturyzowaną dokumentację w docs/solutions/ z YAML frontmatter dla wyszukiwalności i przyszłego odniesienia.
Dlaczego "compound"? Każde udokumentowane rozwiązanie kumuluje wiedzę zespołu. Pierwszy raz rozwiązanie problemu wymaga researchu. Udokumentuj go, a następne wystąpienie zajmie minuty. Wiedza się kumuluje.
/dev-compound # Dokumentuj najnowszą naprawę (tryb compact)
/dev-compound [krótki kontekst] # Podaj dodatkowy opis problemu (tryb compact)
/dev-compound --full # Pełny format z diagnostyką i kontekstem
<problem_description> #$ARGUMENTS </problem_description>
Domyślny tryb: compact — szybki, bez pytań, autonomiczny. Przejdź bezpośrednio do trybu Compact.
Tryb --full to rozszerzony format z pełną diagnostyką — patrz sekcja Tryb Full poniżej. Używaj go gdy użytkownik explicite poda --full.
<critical_requirement> Jeden plik wyjściowy — finalna dokumentacja.
Nie twórz żadnych plików tymczasowych. Wszystko odbywa się w jednym przebiegu. </critical_requirement>
Agent wykonuje WSZYSTKO w jednym sekwencyjnym przebiegu:
Autonomicznie zbierz kontekst — nie pytaj użytkownika.
Bez argumentów:
git diff i git diff --cached żeby zobaczyć ostatnie zmianyZ argumentem (ale bez --full):
Przeczytaj MEMORY.md z katalogu auto memory (ścieżka znana z kontekstu systemowego).
Określ kategorię na podstawie problemu. Dostępne kategorie:
build-errors/ — błędy kompilacji, bundlera, konfiguracji buildruntime-errors/ — błędy w czasie wykonania, crashe, unhandled exceptionssupabase-issues/ — problemy z Supabase (auth, RLS, queries, migrations)auth-issues/ — problemy z autentykacją i autoryzacjąui-bugs/ — błędy wizualne, layout, responsywność, interakcjeperformance-issues/ — wolne zapytania, memory leaks, re-renderytypescript-errors/ — błędy typów, type assertions, genericsdeployment-issues/ — problemy z wdrożeniem, CI/CD, environmenttesting-issues/ — failing testy, konfiguracja testów, mockingOkreśl filename: YYYY-MM-DD-kebab-case-title.md
Utwórz katalog: mkdir -p docs/solutions/[category]/
Zapisz plik docs/solutions/[category]/YYYY-MM-DD-kebab-case-title.md w formacie:
---
title: "Zwięzły opis problemu"
date: YYYY-MM-DD
category: kategoria
severity: low | medium | high | critical
stack:
- React Native
- Expo
- TypeScript
- Supabase
- NativeWind
tags:
- tag1
- tag2
status: verified
last_verified: YYYY-MM-DD
---
# Tytuł problemu
## Symptomy
- Dokładne komunikaty błędów
- Obserwowalne zachowanie
## Root Cause
Techniczna analiza przyczyny (1-3 zdania).
## Rozwiązanie
Krok po kroku z przykładami kodu:
\```typescript
// kod rozwiązania
\```
## Komendy diagnostyczne
\```bash
# komendy pomocne przy diagnozie
\```
## Zapobieganie
- Jak uniknąć tego problemu w przyszłości
## Powiązane
- Linki do powiązanych docs w `docs/solutions/`
- Linki do issues jeśli relevantne
## Kontekst
Dodatkowe informacje o okolicznościach, środowisku, wersji.
Dostosuj sekcje stack i tags do faktycznego stosu technologicznego problemu. Nie wstawiaj pełnego stacka jeśli problem dotyczy tylko jednej technologii.
Sprawdź, czy w tej sesji pojawił się lub uściślił termin domenowy o znaczeniu specyficznym dla projektu (encja, nazwany proces, status/enum o niestandardowym sensie). Jeśli tak — dodaj/zaktualizuj jedno hasło w docs/CONCEPTS.md.
Zasady słownika (trzymaj się ściśle):
→ [nazwa](../CLAUDE.md#kotwica)). Nie kopiuj wiedzy z CLAUDE.md — linkuj.docs/solutions/ lub learned-patterns.## Termin na hasło, dedup przed dodaniem.Bootstrap (pierwsze uruchomienie w projekcie): jeśli docs/CONCEPTS.md nie istnieje, a projekt ma bogatą domenę (statusy/enumy o niestandardowym znaczeniu, nazwane procesy), wygeneruj startowy słownik: przeczytaj CLAUDE.md + schemat bazy/migracje + definicje enumów/statusów w kodzie, wyciągnij 5-15 najważniejszych pojęć projektowo-specyficznych i zapisz plik wg formatu poniżej. Zgłoś użytkownikowi, że utworzono seed do przeglądu.
Format pliku:
# Concepts — słownik domenowy <projekt>
Glosariusz pojęć o znaczeniu specyficznym dla tego projektu (encje, nazwane procesy, statusy).
Jedno hasło = zwięzła definicja + opcjonalny link do CLAUDE.md/docs. Tylko słownik, nie spec.
Narasta przez /dev-compound, porządkowany przez /dev-compound-refresh.
## <Termin>
<1-2 zdania — co znaczy w TYM projekcie, zwłaszcza gdy kontrintuicyjne>. → [szczegóły](../CLAUDE.md#...)
Jeśli nie pojawił się żaden termin domenowy — pomiń ten krok (to normalne dla większości sesji).
Wyświetl podsumowanie:
Dokumentacja zapisana (tryb compact)
Plik: docs/solutions/[category]/[filename].md
Aby uzyskać bogatszą dokumentację (cross-referencje, diagnostyka, strategia zapobiegania),
uruchom /dev-compound --full w świeżej sesji.
[Jeśli dodano regułę:]
Reguła: Dodana do .claude/rules/learned-patterns.md
Po zapisaniu dokumentacji, autonomicznie oceń czy rozwiązany problem zasługuje na regułę w .claude/rules/learned-patterns.md. Nie pytaj użytkownika — zdecyduj sam.
Kryteria rule-worthy (problem spełnia minimum 2 z 5):
Jeśli rule-worthy:
.claude/rules/learned-patterns.md (jeśli istnieje)<!-- rule-count: N -->/dev-compound-refresh# Learned Patterns
Reguły wyciągnięte z rozwiązanych problemów w docs/solutions/. Zarządzane przez /dev-compound i /dev-compound-refresh.
<!-- rule-count: 0 -->
- **[Zwięzły tytuł wzorca]**: [1-2 zdania actionable guidance: "rób X, nie Y"]
Source: docs/solutions/[category]/[filename].md
<!-- rule-count: N --> na <!-- rule-count: N+1 -->Jeśli NIE jest rule-worthy: pomiń ten krok cicho, nie dodawaj nic do podsumowania.
<critical_requirement> Tylko JEDEN plik zostaje zapisany — finalna dokumentacja.
Faza 1 zwraca DANE TEKSTOWE do orkiestratora. Subagenci NIE mogą używać Write, Edit ani tworzyć plików. Tylko orkiestrator (Faza 2) zapisuje finalny plik dokumentacji. </critical_requirement>
Przed uruchomieniem Fazy 1, sprawdź katalog auto memory pod kątem notatek powiązanych z dokumentowanym problemem.
## Notatki uzupełniające z auto memory
Traktuj jako dodatkowy kontekst, nie główne dowody. Historia rozmowy
i wyniki analizy codebase mają priorytet nad tymi notatkami.
[relevantne wpisy]
Jeśli nie znaleziono relevantnych wpisów, przejdź do Fazy 1 bez przekazywania kontekstu memory.
<parallel_tasks>
Uruchom te zadania RÓWNOLEGLE. Każde zwraca dane tekstowe do orkiestratora.
docs/solutions/ pod kątem powiązanej dokumentacjidocs/solutions/</parallel_tasks>
<sequential_tasks>
POCZEKAJ na zakończenie wszystkich zadań Fazy 1 przed kontynuacją.
Orkiestrujący agent (główna rozmowa) wykonuje te kroki:
mkdir -p docs/solutions/[category]/docs/solutions/[category]/[filename].mdFormat pliku jest taki sam jak w trybie Compact, ale z bogatszą treścią:
</sequential_tasks>
Po zapisie nowego dokumentu, oceń czy starsze dokumenty mogą wymagać odświeżenia.
Odświeżenie ma sens gdy:
Odświeżenie nie ma sensu gdy:
Jeśli widzisz oczywistego kandydata do odświeżenia, wspomnij o tym w podsumowaniu i zasugeruj uruchomienie /dev-compound-refresh z wąskim scope.
Zastosuj Krok 4.5 także w trybie full — jeśli w sesji pojawił się termin domenowy o projektowo-specyficznym znaczeniu, dodaj/zaktualizuj hasło w docs/CONCEPTS.md (cienki indeks + link; utwórz plik z nagłówkiem jeśli nie istnieje).
Identyczna logika jak Krok 6 w trybie Compact — autonomicznie oceń czy problem jest rule-worthy (minimum 2 z 5 kryteriów), sprawdź duplikaty i limit ~50, dodaj regułę do .claude/rules/learned-patterns.md jeśli zasługuje. Jeśli plik nie istnieje — stwórz z nagłówkiem. Format reguły i kryteria opisane w Kroku 6 trybu Compact.
Zorganizowana dokumentacja:
docs/solutions/[category]/[filename].mdKategorie auto-wykrywane z problemu:
| Źle | Dobrze |
|---|---|
Subagenci tworzą pliki jak context-analysis.md, solution-draft.md | Subagenci zwracają dane tekstowe; orkiestrator zapisuje jeden finalny plik |
| Research i montaż działają równolegle | Research się kończy, potem montaż |
| Tworzenie wielu plików w workflow | Jeden plik: docs/solutions/[category]/[filename].md |
| Pytania do użytkownika w trybie compact | Tryb compact działa autonomicznie, bez pytań |
Dokumentacja zapisana
Auto memory: 2 relevantne wpisy użyte jako dodatkowy kontekst
Wyniki zadań:
- Analizator kontekstu: Zidentyfikowano runtime_error w module auth
- Ekstraktor rozwiązania: 2 poprawki kodu
- Wyszukiwarka powiązanych: 1 powiązany dokument
- Strateg zapobiegania: Strategie zapobiegania, sugestie testów
- Klasyfikator kategorii: `auth-issues`
Plik: docs/solutions/auth-issues/2026-03-24-supabase-rls-policy-bypass.md
Reguła: [Dodana do .claude/rules/learned-patterns.md / Limit osiągnięty / Nie rule-worthy]
Ta dokumentacja będzie wyszukiwalna jako referencja gdy podobne
problemy pojawią się w przyszłości.
Następne kroki:
1. Kontynuuj pracę (rekomendowane)
2. Połącz powiązaną dokumentację
3. Zaktualizuj inne referencje
4. Wyświetl dokumentację
5. Inne
System kumulowania wiedzy:
Pętla feedbacku:
Build -> Test -> Znajdź problem -> Research -> Popraw -> Dokumentuj -> Waliduj -> Deploy
^ |
'--------------------------------------------------------------------------------'
Każda jednostka pracy inżynieryjnej powinna ułatwiać kolejne jednostki pracy — nie utrudniać.
<auto_invoke> <trigger_phrases> - "zadziałało" - "naprawione" - "działa" - "problem rozwiązany" - "fixed" - "it works" </trigger_phrases>
<manual_override> Użyj /dev-compound [kontekst] żeby dokumentować natychmiast bez czekania na auto-detekcję. </manual_override> </auto_invoke>
/dev-brainstorm [temat] - Walidacja pomysłu i brainstorming/dev-docs [temat] - Planowanie implementacji/dev-compound-refresh [scope] - Odświeżenie istniejącej dokumentacji solutions