Definiuj komendy slash wielokrotnego użytku jako pliki Markdown, udostępniaj je zespołowi przez git i obsługuj częste zadania jak przegląd kodu, generowanie testów i opisy PR.
Claude Code ma kilka wbudowanych slash commands — /help, /clear, /compact. Ale te, które naprawdę przyspieszają pracę, to te, które piszesz sam.
Ten artykuł dotyczy projektowania systemu slash commands wielokrotnego użytku, tak aby cały zespół korzystał ze wspólnej biblioteki promptów, zamiast opisywać zadania od zera przy każdym użyciu.
W Claude Code niestandardowy slash command to po prostu plik Markdown. Umieść go w odpowiednim katalogu, Claude Code wykryje go przy uruchomieniu, a wpisanie /nazwa-pliku uruchomi go.
Zawartość pliku to prompt wysyłany do Claude'a. To wszystko.
Żadnej specjalnej składni, żadnego formatu konfiguracji — jeden plik .md to jedna komenda.
Dwie lokalizacje, dwa cele:
| Lokalizacja | Ścieżka | Zakres |
|---|---|---|
| Projekt | .claude/commands/ |
Tylko bieżący projekt, można commitować do git |
| Użytkownik | ~/.claude/commands/ |
Wszystkie projekty, osobiste |
Poziom projektu to rdzeń współdzielenia w zespole. Commituj .claude/commands/ do gita, a każdy kto sklonuje repozytorium, automatycznie otrzyma pełen zestaw komend.
Poziom użytkownika nadaje się do osobistych nawyków — preferowane sprawdzanie stylu kodu lub integracje narzędzi, których używasz tylko ty.
W katalogu głównym projektu:
mkdir -p .claude/commands
Utwórz .claude/commands/review.md:
Sprawdź jakość kodu bieżących zmian. Skup się na:
1. Błędach logicznych i przypadkach brzegowych
2. Czy nazewnictwo jest jasne
3. Zduplikowanym kodzie wartym wyodrębnienia
4. Problemach bezpieczeństwa (SQL injection, XSS, ujawnione sekrety)
Podaj konkretne, możliwe do wdrożenia sugestie — nie ogólne porady.
Uruchom ponownie Claude Code i wpisz /review, aby go aktywować.
Komendy o stałej treści mają ograniczone zastosowanie. $ARGUMENTS czyni je elastycznymi — to, co użytkownik wpisuje po /komendzie, zostaje wstawione do promptu.
Przykład .claude/commands/test.md:
Napisz testy dla: $ARGUMENTS
Wymagania:
- Pokryj ścieżkę główną i przypadki brzegowe
- Nazwy testów powinny być samoobjaśniające
- Używaj prawdziwych danych zamiast mocków tam, gdzie to możliwe
Użycie:
/test metodę login klasy UserAuthentication
Claude otrzymuje:
Napisz testy dla: metodę login klasy UserAuthentication
Wymagania:
...
$ARGUMENTS może pojawić się w dowolnym miejscu promptu i być użyty wielokrotnie.
Jedna komenda, jedna odpowiedzialność
Nie pisz komendy "do wszystkiego". /review do przeglądu kodu, /test do pisania testów, /pr do opisów PR. Skupione komendy są łatwiejsze do zapamiętania i ponownego użycia.
Pisz konkretne prompty, nie abstrakcyjne
Źle:
Pomóż mi zoptymalizować ten kod
Dobrze:
```
Zoptymalizuj ten kod pod kątem wydajności. Priorytety:
1. Zmniejszenie zbędnych zapytań do bazy danych (problemy N+1)
2. Unikanie powtarzanych obliczeń w pętlach
3. Zastąpienie liniowych wyszukiwań wydajniejszymi strukturami danych
Zachowaj interfejs bez zmian — zmieniaj tylko implementację.
```
Konkretne ograniczenia prowadzą do celnych wyników.
Dodawaj frontmatter do komend
Pole description pojawia się na liście komend Claude Code, dzięki czemu członkowie zespołu szybko rozumieją przeznaczenie każdej komendy:
---
description: Przegląda bieżące zmiany i dostarcza informacji zwrotnej o jakości kodu
---
Sprawdź jakość kodu bieżących zmian...
Dla projektu Rails te komendy pokrywają najczęstsze codzienne zadania programistyczne:
.claude/commands/review.md — Przegląd kodu
.claude/commands/test.md — Generowanie testów
.claude/commands/pr.md — Opis PR
.claude/commands/explain.md — Wyjaśnienie kodu
Niektóre nawyki są osobiste. Umieść je w ~/.claude/commands/:
~/.claude/commands/standup.md — Przygotowanie do codziennego standupu
~/.claude/commands/refactor.md — Sugestie refaktoryzacji
Prawdziwa wartość niestandardowych komend to nie osobista produktywność — to dawanie zespołowi wspólnego języka.
Commituj .claude/commands/ do repozytorium i dokumentuj dostępne komendy w README lub CLAUDE.md. Nowi członkowie zespołu otrzymują skumulowaną przez zespół bibliotekę promptów w momencie klonowania repo.
W miarę jak projekt się rozwija, rozwijają się też komendy. Jeśli prompt nie działa dobrze, popraw jedną linię i pushuj — cały zespół otrzymuje aktualizację.
.claude/
├── commands/
│ ├── review.md
│ ├── test.md
│ ├── pr.md
│ └── explain.md
└── settings.json