SSD Nodes Learn 🎉 VPS od $5.50/mies.
Przewodniki Matt ConnorAutor: Matt Connor · Zaktualizowano 2026-08-13

Claude Code: czym są wtyczki i ile kosztują?

Wyjaśniamy mechanizm działania wtyczek w Claude Code. Dowiedz się, jak instalować komponenty, zarządzać przestrzeniami nazw i dlaczego koszt korzystania z nich to wyłącznie tokeny.

Czym jest wtyczka Claude Code

Wtyczka Claude Code to katalog komponentów, które Claude Code wczytuje i zarządza nimi jako jedną jednostką. Komponentami tymi są umiejętności (skills), agenci, hooki, serwery MCP, serwery LSP oraz monitory działające w tle. Instalacja wtyczki dodaje wszystkie jej części jednocześnie, pod jedną nazwą, a jej wyłączenie usuwa je w ten sam sposób.

Wtyczka nie nadaje agentowi żadnych możliwości, których nie posiadałby wcześniej. Każdy element wewnątrz wtyczki jest czymś, co można napisać ręcznie w katalogu .claude/. Wtyczka stanowi warstwę pakowania: sposób na wersjonowanie tych części, przekazanie ich piętnastu osobom oraz późniejszą aktualizację bez konieczności proszenia każdego o kopiowanie plików. Na tym polega cała idea, a większość nieporozumień dotyczących wtyczek wynika z oczekiwania, że są one nowym rodzajem funkcjonalności.

Opcjonalny manifest w .claude-plugin/plugin.json nadaje wtyczce nazwę, która staje się przestrzenią nazw. Umiejętność we wtyczce o nazwie commit-commands jest wywoływana jako /commit-commands:commit, dzięki czemu dwie wtyczki mogą dostarczać umiejętność o nazwie commit bez wzajemnego przesłaniania się. Agenci wtyczek są objęci tym samym zakresem na liście @-wzmianek, jako plugin-name:agent-name.

Wtyczka, umiejętność, serwer MCP lub plik reguł

Te cztery pojęcia bywają używane zamiennie, co jest błędem. Ich zakresy znaczeniowe są odrębne i warto je zdefiniować.

  • Umiejętność (skill) to pojedyncza jednostka instrukcji, którą Claude ładuje w razie potrzeby. Zobacz czym w rzeczywistości jest umiejętność agenta.
  • Serwer MCP to osobny proces, który udostępnia narzędzia agentowi za pośrednictwem protokołu; często jest to usługa sieciowa uruchamiana samodzielnie.
  • Plik reguł, taki jak CLAUDE.md, stanowi kontekst projektu, który jest odczytywany przy starcie sesji i ma zastosowanie do wszystkich działań.
  • Wtyczka (plugin) to kontener, który może łączyć umiejętności, agentów, hooki oraz definicje serwerów MCP, a także numer wersji i kanał dystrybucji.

Zatem pytanie, na które odpowiada wtyczka, nie brzmi „co potrafi agent”. Brzmi ono: „jak dostarczyć to rozwiązanie zespołowi i zaktualizować je w przyszłości”. Jeśli wybierasz między pierwszymi trzema rozwiązaniami, porównanie umiejętności, serwerów MCP i plików reguł szczegółowo omawia tę kwestię. Jeśli interesuje Cię aspekt MCP, uruchamianie własnych serwerów MCP na VPS wyjaśnia kwestie związane z hostingiem.

Lokalizacja wtyczek i ich zawartość

Wtyczka zainstalowana z marketplace jest kopiowana do lokalnej pamięci podręcznej w ~/.claude/plugins/cache, zamiast być uruchamiana z miejsca, z którego została sklonowana. Każda zainstalowana wersja otrzymuje własny katalog. Podczas aktualizacji lub odinstalowania, katalog starej wersji jest oznaczany jako osierocony i usuwany po około dwóch tygodniach. Dzięki temu sesja, która już załadowała starą wersję, działa poprawnie zamiast przerywać pracę w trakcie zadania.

Ponieważ ścieżka zmienia się przy każdej aktualizacji, wtyczka nigdy nie powinna mieć na sztywno wpisanej własnej lokalizacji. Hooki i konfiguracje MCP wewnątrz wtyczki używają ${CLAUDE_PLUGIN_ROOT}, co wskazuje na bieżący katalog instalacyjny. Dane, które muszą przetrwać aktualizację, należy umieszczać w ${CLAUDE_PLUGIN_DATA}, co wskazuje na stabilny katalog wewnątrz ~/.claude/plugins/data/.

Do pamięci podręcznej kopiowany jest tylko katalog samej wtyczki, co prowadzi do problemu, z którym użytkownicy często spotykają się później. Ścieżka wskazująca poza katalog główny wtyczki, taka jak ../shared-utils, działa podczas tworzenia wtyczki z lokalnej ścieżki, ale przestaje działać po instalacji, ponieważ te pliki nie zostały skopiowane.

Struktura wygląda następująco.

my-plugin/
├── .claude-plugin/
│   └── plugin.json
├── skills/
│   └── code-review/
│       └── SKILL.md
├── agents/
├── hooks/
│   └── hooks.json
├── .mcp.json
└── bin/

Tylko plugin.json znajduje się wewnątrz .claude-plugin/. Wszystko inne znajduje się w katalogu głównym wtyczki. Umieszczenie skills/ lub hooks/ wewnątrz .claude-plugin/ jest najczęstszą przyczyną sytuacji, w której wtyczka instaluje się poprawnie, a następnie nie wykonuje żadnych działań: Claude Code szuka tych katalogów w katalogu głównym, nie znajduje ich i ładuje wtyczkę bez żadnych komponentów.

Sam manifest jest niewielki.

{
  "name": "my-first-plugin",
  "description": "A greeting plugin to learn the basics",
  "version": "1.0.0"
}

Jak zainstalować wtyczkę Claude Code

Instalacja składa się z dwóch kroków, przy czym pierwszy z nich nie instaluje żadnych plików. Najpierw dodaje się marketplace, czyli katalog wtyczek, a następnie instaluje z niego poszczególne wtyczki. Oficjalny marketplace Anthropic, claude-plugins-official, jest rejestrowany automatycznie przy pierwszym interaktywnym uruchomieniu Claude Code. Inne źródła należy dodać samodzielnie.

/plugin marketplace add anthropics/claude-code
/plugin install commit-commands@claude-code-plugins

Należy pamiętać, że repozytorium to anthropics/claude-code, podczas gdy marketplace nosi nazwę claude-code-plugins. Nazwa pochodzi z pliku katalogu wewnątrz repozytorium, a nie ze ścieżki repozytorium, dlatego przed wpisaniem polecenia instalacji należy odczytać nazwę marketplace z karty Marketplaces w /plugin.

Po zakończeniu instalacji należy sprawdzić podsumowanie. Plugin is now active. oznacza, że komponenty zostały załadowane w bieżącej sesji. Run /reload-plugins to activate. oznacza, że nie zostały załadowane i konieczne jest ponowne uruchomienie polecenia. Jeśli /reload-plugins wyświetli ostrzeżenie o ponownym odczycie konwersacji, należy uruchomić polecenie ponownie z flagą /reload-plugins --force. Następnie należy potwierdzić obecność wtyczki: /plugin wyświetla ją na karcie Installed, /help wymienia jej umiejętności na karcie Custom commands, a wszelkie błędy ładowania pojawiają się na karcie Errors wraz z przyczyną.

Podczas instalacji wymagane jest określenie zakresu (scope), który decyduje o tym, kto otrzyma wtyczkę. Zakres użytkownika (user scope) dotyczy użytkownika we wszystkich projektach. Zakres projektu (project scope) zapisuje wtyczkę w pliku .claude/settings.json repozytorium w sekcji enabledPlugins, dzięki czemu jest ona oferowana każdemu, kto sklonuje repozytorium. Zakres lokalny (local scope) dotyczy użytkownika tylko w bieżącym repozytorium.

W przypadku skryptów, plików Dockerfile lub sesji, w których panel interaktywny jest niedostępny, należy użyć wersji powłoki (shell form). Instaluje ona wtyczkę w zakresie użytkownika, chyba że zostanie przekazana flaga --scope.

claude plugin install commit-commands@claude-code-plugins --scope project
claude plugin list

claude plugin install działa poza sesją, więc otwarta sesja nie wykryje nowej wtyczki, dopóki nie zostanie uruchomione polecenie /reload-plugins lub nie zostanie rozpoczęta nowa sesja.

Zarządzanie posiadanymi wtyczkami odbywa się w ten sam sposób w obu przypadkach. /plugin list wyświetla zainstalowane elementy i akceptuje flagi --enabled lub --disabled. /plugin disable name@marketplace wyłącza wtyczkę bez jej usuwania, /plugin enable włącza ją ponownie, a /plugin uninstall usuwa. Polecenia typu slash otwierają panel wtyczek w celu zastosowania zmian, dlatego w skryptach należy używać odpowiedników powłoki claude plugin ....

Aby udostępnić marketplace całemu zespołowi, należy umieścić go w pliku .claude/settings.json projektu. Członkowie zespołu otrzymają monit o instalację po zaufaniu folderowi repozytorium.

{
  "extraKnownMarketplaces": {
    "my-team-tools": {
      "source": {
        "source": "github",
        "repo": "your-org/claude-plugins"
      }
    }
  }
}

Podczas tworzenia własnej wtyczki należy pominąć marketplace. claude --plugin-dir ./my-plugin ładuje katalog dla bieżącej sesji, /reload-plugins uwzględnia edycje bez restartu, a claude plugin validate ./my-plugin sprawdza manifest, umiejętności, frontmatter agenta oraz hooks/hooks.json, zanim wtyczka zostanie udostępniona innym.

Ile kosztuje wtyczka Claude Code?

Mechanizm jest bezpłatny. Według stanu na sierpień 2026 r. nie są pobierane opłaty za dodanie marketplace, instalację wtyczki ani utrzymywanie jej w stanie włączonym. Oficjalne i społecznościowe marketplace to publiczne repozytoria git, a wtyczka jest katalogiem plików tekstowych.

Koszt wtyczki wyraża się w tokenach, a tokeny są jednostką, którą mierzy subskrypcja lub rachunek za API. Koszt ten powstaje na trzy sposoby i każdy z nich zachowuje się inaczej.

Koszt stałego kontekstu. Zawartość wtyczki znajduje się w kontekście i jest odczytywana przy każdej turze sesji. Przed instalacją widok szczegółów /plugin pokazuje szacunkową liczbę tokenów Context cost oraz sekcję Will install z listą poleceń, umiejętności, agentów, hooków oraz serwerów MCP i LSP, które zostaną dodane. Należy zapoznać się z obydwoma elementami. Wtyczki z lokalnych lub niestandardowych marketplace mogą nie dostarczać tych danych; w takim przypadku szacunki trzeba wykonać ręcznie. Wtyczka zawierająca serwer MCP jest zazwyczaj najbardziej obciążająca, ponieważ definicje narzędzi są duże, choć w modelach obsługujących wyszukiwanie narzędzi MCP definicje te są odraczane do momentu, gdy narzędzie będzie potrzebne.

Koszt wywołania. Uruchomienie umiejętności wtyczki dołącza jej instrukcje do konwersacji, więc za treść umiejętności płaci się tylko wtedy, gdy jest używana. Agent działa inaczej. Podagent prowadzi własną konwersację z własnym system promptem i własną pamięcią podręczną, zaczynając od braku trafień w cache, więc wtyczka, której przepływ pracy tworzy agentów, kosztuje znacznie więcej, niż sugeruje szacunek kontekstu.

Koszt pamięci podręcznej (cache). Włączenie lub wyłączenie wtyczki w trakcie sesji może wymusić na kolejnym żądaniu ponowne przetworzenie całej konwersacji. Umiejętności, polecenia, agenci, hooki, serwery LSP, monitory i motywy nigdy tego nie robią: to, co dodają, jest dołączane po istniejącej historii, więc kolejne żądanie płaci za nową zawartość, a wszystko wcześniejsze odczytuje z cache. Wyjątkiem jest wtyczka dostarczająca serwer MCP. Jeśli jej narzędzia są odraczane przez wyszukiwanie narzędzi, cache pozostaje nienaruszony. Jeśli ładują się do prefiksu promptu, kolejne żądanie odczytuje całą konwersację jako dane niebędące w cache. Właśnie dlatego /reload-plugins wyświetla ostrzeżenie i odmawia działania w takim przypadku, dopóki nie zostanie przekazana flaga --force.

Można to monitorować, zamiast zgadywać. Każda odpowiedź API raportuje cache_read_input_tokens oraz cache_creation_input_tokens, a niestandardowy pasek statusu pokazujący bieżące zużycie tokenów prezentuje obie te wartości. Poprawna sesja odczytuje znacznie więcej, niż tworzy. Jeśli tworzenie pozostaje wysokie w kolejnych turach, oznacza to, że coś w prefiksie zmienia się przy każdym kroku. Aby uzyskać szerszy obraz tego, co wypełnia okno, zobacz jak zarządzać oknem kontekstu Claude Code oraz co faktycznie oznaczają te liczby tokenów.

Jeden element porządkowy zwraca się sam. Karta Installed grupuje wtyczki, które nie były używane przez co najmniej dwa tygodnie, pod nagłówkiem Not used recently, z linią Last used w widoku szczegółów. Takie wtyczki nadal kosztują czas uruchamiania i zajmują miejsce w kontekście każdej sesji. Należy je wyłączyć lub odinstalować.

Wtyczka działa z Twoimi uprawnieniami

Własna dokumentacja Anthropic jasno to określa: wtyczki i markety są wysoce zaufanymi komponentami, które mogą wykonywać dowolny kod na Twoim komputerze z uprawnieniami Twojego użytkownika. Nie jest to zagrożenie hipotetyczne. Hooki wtyczki uruchamiają polecenia powłoki przy zdarzeniach sesji, w tym przed i po wywołaniach narzędzi. Jej katalog bin/ jest dodawany do PATH narzędzia Bash, gdy wtyczka jest włączona. Jej serwery MCP to procesy, które sama uruchamia. Nic tutaj nie jest odizolowane od Twojego konta użytkownika w ramach piaskownicy.

Na laptopie to ryzyko jest ograniczone do zasobów dostępnych dla użytkownika pulpitu. Na serwerze zazwyczaj tak nie jest. Konto uruchamiające agenta często posiada klucze SSH, tokeny wdrożeniowe, sesję cloud CLI oraz dostęp do gniazda Docker, więc „dowolny kod jako Twój użytkownik” oznacza przejęcie maszyny. Jeśli Claude Code działa na VPS, przeczytaj jak bezpiecznie uruchomić Claude Code na VPS przed zainstalowaniem czegokolwiek oraz jak chronić poświadczenia przed dostępem agenta przed zainstalowaniem wtyczki komunikującej się z usługą zewnętrzną.

Istnieją pewne zabezpieczenia i warto wiedzieć, które z nich działają. Wtyczka o zasięgu projektu pochodzi z repozytorium, a nie od Ciebie, więc ładuje się dopiero po zaufaniu obszarowi roboczemu, jej serwery MCP nadal wymagają zatwierdzenia dla każdego serwera, jej serwery LSP czekają na to zaufanie, a jej monitory działające w tle w ogóle się nie ładują. Agenci dostarczani z wtyczkami nie mogą deklarować hooków, serwerów MCP ani trybu uprawnień. Wtyczki z marketu są kopiowane do pamięci podręcznej, przy czym dowiązania symboliczne wskazujące poza market są pomijane, więc wtyczka nie może pobrać dowolnych plików hosta.

Nic z tego nie zastępuje weryfikacji instalowanego oprogramowania. Sprawdzaj listę Will install, preferuj wtyczki, których kod źródłowy możesz otworzyć i przeczytać, przechowuj wtyczki swojego zespołu w repozytorium marketu, które kontrolujesz, i uruchamiaj claude plugin validate na wszystkim, co napiszesz samodzielnie.

FAQ

Czy wtyczki do Claude Code wiążą się z dodatkowymi kosztami?

Nie. System wtyczek, dodawanie marketplace'u oraz instalacja wtyczek są bezpłatne. Koszt wynika z wykorzystania tokenów, rozliczanego zgodnie z planem lub zużyciem API, podobnie jak w przypadku każdego innego kontekstu. Wtyczka dodaje stały kontekst w każdej turze, zwiększa jego ilość przy wywołaniu umiejętności lub agenta, a także może wymusić jedną kosztowną turę bez pamięci podręcznej, jeśli dostarcza serwer MCP, którego narzędzia są ładowane do prefiksu promptu. Widok szczegółowy /plugin wyświetla szacunkowy koszt Context cost przed instalacją.

Jaka jest różnica między wtyczką a umiejętnością?

Umiejętność to pojedyncza jednostka instrukcji. Wtyczka to pakiet, który może zawierać umiejętności, agentów, hooki, serwery MCP, serwery LSP oraz monitory, posiadający nazwę, wersję i marketplace, z którego można go zainstalować. Samodzielną umiejętność należy napisać w .claude/, jeśli jest ona przeznaczona dla użytkownika i bieżącego projektu. Umiejętność jednofunkcyjna, taka jak Ponytail, która nakierowuje agenta na najmniejszą działającą zmianę, jest tego najjaśniejszym przykładem: jeden plik z jedną regułą, aż do momentu, gdy zespół również będzie chciał z niej korzystać. Wtyczkę należy utworzyć, gdy inne osoby potrzebują danego rozwiązania i wymaga ono aktualizacji w czasie. Umiejętności wtyczek posiadają własną przestrzeń nazw, dlatego umiejętność wewnątrz wtyczki wywołuje się jako /plugin-name:skill-name, a nie /skill-name.

Wtyczka została zainstalowana, ale jej umiejętności nie są widoczne. Co jest nie tak?

Najpierw należy sprawdzić podsumowanie instalacji. Jeśli pojawił się komunikat Run /reload-plugins to activate., komponenty nie zostały jeszcze załadowane; jeśli przeładowanie ostrzega o ponownym odczycie konwersacji, należy uruchomić je ponownie jako /reload-plugins --force. Jeśli wtyczka załadowała się, ale nic nie wyświetla, należy otworzyć /plugin i sprawdzić kartę Errors. Najczęstszym błędem strukturalnym jest umieszczenie skills/, agents/ lub hooks/ wewnątrz .claude-plugin/, gdzie Claude Code ich nie wyszukuje. Należy pamiętać, że umiejętności wtyczek mają własną przestrzeń nazw, więc należy szukać /plugin-name:skill-name w karcie Custom commands w /help. W ostateczności należy wykonać rm -rf ~/.claude/plugins/cache, zrestartować i zainstalować ponownie.

Czy można instalować wtyczki bez panelu interaktywnego?

Tak. Należy użyć polecenia powłoki claude plugin install name@marketplace, które instaluje wtyczkę w zakresie użytkownika, chyba że przekazano flagę --scope project lub --scope local. Działa to w skryptach, obrazach i środowiskach nieinteraktywnych, gdzie panel /plugin jest niedostępny. Ponieważ proces ten odbywa się poza sesją, otwarta sesja wymaga /reload-plugins, aby wtyczka zaczęła działać.

Czy instalacja wtyczki z marketplace'u znalezionego w serwisie GitHub jest bezpieczna?

Należy traktować to tak samo, jak uruchomienie skryptu instalacyjnego z tego repozytorium na własnym koncie, ponieważ jest to zbliżone działanie. Wtyczka może wykonywać polecenia powłoki poprzez hooki, dodawać pliki wykonywalne do PATH narzędzia Bash oraz uruchamiać serwery MCP – wszystko to z uprawnieniami użytkownika. Anthropic nie kontroluje ani nie weryfikuje zawartości wtyczek stron trzecich. Należy instalować wtyczki ze źródeł, które można przejrzeć, sprawdzić listę Will install przed potwierdzeniem oraz zachować większą ostrożność na serwerze niż na laptopie, ponieważ konto na serwerze zazwyczaj przechowuje klucze i tokeny, które mogą stać się celem ataku.