# Prompty z filmu „Claude Code Mods od podstaw”

Wymagany Claude Code 2.1.287 albo nowszy (`claude --version`). Sesję otwierasz w projekcie z repozytorium Git.

## 1. Własny mod

```
Zrób moda, który nad polem promptu pokazuje gałąź Git i liczbę zmienionych plików.
```

Claude pisze moda do `~/.claude/dev-mods/<id-sesji>/`. Pyta o każdy plik (chroniony katalog) i o hot reload: wybierz „Enable for this session”.

## 2. Zmiana w modzie

```
Dodaj do tego moda: zanim Claude zrobi git push na main, zapytaj mnie, a w razie błędu odmów.
```

Mod przeładowuje się na koniec tury. Sprawdzasz poleceniem: `zrób commit i wypchnij`.

## 2b. Klik w pasek i powiadomienie (Claude Code 2.1.295 albo nowszy)

```
Dodaj jeszcze: kliknięcie paska pokazuje zmienione pliki, a po turze dłuższej niż 30 sekund wyślij mi powiadomienie z własnym tytułem.
```

Kliknięcie paska pokazuje dymek z listą plików. Po długiej turze przychodzi powiadomienie systemowe; gdy powiadomienia są wyłączone, mod pokazuje dymek w terminalu.

## 3. Zachowaj moda na kolejne sesje

Mod napisany przez Claude działa tylko w sesji, w której powstał. Skopiuj go do własnego folderu:

```bash
mkdir -p ~/mods
cp -r ~/.claude/dev-mods/<id-sesji>/git-pasek ~/mods/
```

Potem wybierz, jak go ładować:

```bash
# Na jedną sesję
claude --plugin-dir ~/mods/git-pasek

# Zawsze, przez alias w ~/.zshrc albo ~/.bashrc
alias claude='claude --plugin-dir ~/mods/git-pasek'

# Zawsze, przez settings.json: ~/mods jako Twój marketplace
# (potrzebny plik ~/mods/.claude-plugin/marketplace.json z paczki)
claude plugin marketplace add ~/mods
claude plugin install git-pasek@moje-mody
```

Dwie ostatnie komendy same dopisują do `~/.claude/settings.json` wpisy `extraKnownMarketplaces` i `enabledPlugins`. Wyłączysz moda w `/plugin`.

## 4. Sprawdź cudzego moda, zanim go zainstalujesz

```bash
claude plugin validate ./mod
```

Przeczytaj linie `hooks:`, `calls:` i `env reads:`. Czerwone flagi: `prompt.submit` (widzi każdy prompt), `tool.check` (zatwierdza wywołania narzędzi), `$.http.fetch` (sieć) i `env reads` z kluczami. Validate pokazuje, czego mod używa, ale nie ocenia, czy to bezpieczne.
