
Claude Code Plugins: Hva de er og hvordan bruke dem
En Claude Code plugin er en mappe som leverer mer enn én type utvidelse samtidig. Der en ferdighet er en enkelt SKILL.md-fil som lærer Claude én oppførsel, kan en plugin samle ferdigheter, subagenter, hooks, slash-kommandoer og til og med en MCP-server, og installere alt med én kommando. Det er forskjellen mellom å gi noen et oppskriftskort og gi dem et utstyrt kjøkken.
Anthropic la til plugins i Claude Code sent i 2025, og de løste et reelt problem: team installerte ikke én ferdighet om gangen, de satte sammen oppsett. En "backend-ingeniør"-konfigurasjon kan trenge en feilsøkingsferdighet, en kode-gjennomgangs-subagent, en pre-commit hook, og en database MCP-tilkobling. Før plugins betydde det fire separate installasjoner og fire steder for oppsettet å komme ut av synkronisering. En plugin gjør det til én.
Vi tester og katalogiserer Claude-ferdigheter hos SkillProof, og plugins er neste nivå opp fra det vi vanligvis gjennomgår: et pakkeformat, ikke en oppførsel. Denne guiden dekker hva som faktisk er inne i en plugin, hvordan markedsplasssystemet fungerer, og det samme tillitsspørsmålet vi har stilt om ferdigheter siden vi startet, nå anvendt på noe med mye større overflateareal.
Hva plugins faktisk pakker
Fire ingredienskategorier kan dukke opp inne i en enkelt plugin, og de fleste reelle plugins bruker mer enn én:
- Ferdigheter — markdown-instruksjoner som lastes når en oppgave matcher, samme format som dekket i hva Claude-ferdigheter er.
- Subagenter — separate Claude-instanser med sin egen systemprompt og kontekstvindu, nyttig for å delegere en støyende eller parallell oppgave.
- Hooks — shell-kommandoer som utløses automatisk ved hendelser som filsparing, en commit, eller at en verktøykall avsluttes. En lint-ved-sparing hook er det klassiske eksempelet.
- Slash-kommandoer — egendefinerte kommandoer som
/deployeller/standupsom kjører en forhåndsdefinert prompt eller et skript når en lagkamerat skriver dem. - MCP-servere — en tilkobling til et eksternt verktøy eller datakilde, konfigurert én gang inne i pluginen i stedet for manuelt i hvert prosjekt.
En plugin trenger ikke alle fem. Mange leverer bare et par ferdigheter, eller en enkelt hook pluss kommandoen som utløser den. Det som gjør det til en plugin snarere enn en løs samling filer, er at den installeres som én enhet, med ett manifest som beskriver hva som er inne.
Plugins vs ferdigheter: npm-pakkeanalogien
Den reneste måten å tenke på dette: en ferdighet er en funksjon, en plugin er en pakke.
En enkelt ferdighet lærer Claude én oppførsel, enten det er å formatere møtenotater eller revidere en SEO-side. Den har ingen avhengigheter og ingen konfigurasjon utover sin egen markdown. Det er med vilje: en ferdighet skrevet for å dekke flere urelaterte oppgaver har en tendens til å utløses upålitelig på alle, siden beskrivelsen ikke kan være spesifikk om noen enkelt.
En plugin er distribusjonsenheten rundt den oppførselen. I npm-verdenen sendes ikke en funksjon alene; den sendes inne i en pakke med en package.json, et versjonsnummer, og kanskje et par andre funksjoner som hører sammen. En plugin spiller samme rolle for Claude Code: det er tingen med et navn, en versjon, en forfatter og et manifest, og ferdighetene, hookene og kommandoene inni er eksportene.
Denne skillet er viktig av praktiske årsaker. Når noe bryter sammen, er "ferdighetens trigger for vag" og "pluginens hook kjører feil shell-kommando" forskjellige feil med forskjellige løsninger. Å skylde på hele pluginen for én dårlig ferdighet inni, eller omvendt, kaster bort tid. Les manifestet først for å se hva som faktisk ble levert før du diagnostiserer noe.
Det betyr også at de to enhetene evalueres forskjellig. En ferdighet lever eller dør på triggerkvalitet og om dens utdata overgår Claudes standard. En plugin lever eller dør på om delene samarbeider: utløses hooken før eller etter ferdigheten trenger dens utdata, kaller kommandoen en MCP-server som faktisk er konfigurert, kolliderer installasjonen med noe du allerede har.
Anatomi av en plugin
Alle plugins trenger en .claude-plugin-mappe på roten som inneholder plugin.json, manifestet. Alt annet (skills/, agents/, hooks/, commands/, .mcp.json) ligger ved siden av som vanlige mapper som Claude Code kjenner igjen ved konvensjon.
Her er en liten, men komplett plugin, annotert:
team-standards/
├── .claude-plugin/
│ └── plugin.json
├── skills/
│ └── code-review/
│ └── SKILL.md
├── hooks/
│ └── hooks.json
└── commands/
└── deploy.md
// .claude-plugin/plugin.json
{
"name": "team-standards",
"version": "1.2.0",
"description": "Vår lint hook, review skill, og deploy command i én installasjon.",
"author": "platform-team"
}
Manifestet er bevisst tynt. Det identifiserer pluginen og dens versjon; det lister ikke opp hver fil inni, fordi Claude Code oppdager skills/, hooks/, og commands/ automatisk basert på mappenavn.
// hooks/hooks.json
{
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [{ "type": "command", "command": "./scripts/check-branch.sh" }]
}
]
}
Denne hooken utløses før enhver Bash-verktøykall og kan blokkere den, noe som er hvordan en plugin håndhever noe som "aldri kjør destruktive git-kommandoer på main" uten å stole på at Claude husker å sjekke.
<!-- commands/deploy.md -->
---
description: Kjør vår deploy-sjekkliste mot staging
---
Verifiser at grenen ikke er main, bekreft at migrasjoner er brukt,
kjør deretter `./deploy.sh staging`. Rapporter deploy-loggens sammendrag.
Å skrive /deploy kjører nøyaktig dette, hver gang, formulert identisk for hver lagkamerat som installerer pluginen. Den konsistensen er hele poenget: tre komponenter, ett versjonsnummer, én installasjonskommando, og ingen sin lokale oppsett som driver fra hverandre.
En separat fil, marketplace.json, er ikke en del av pluginen selv. Det er indeksen en markedsplass-repository publiserer slik at Claude Code vet hvilke plugins som finnes der og hvor hver enkelt kan hentes fra. Én repo sin marketplace.json kan liste dusinvis av urelaterte plugins; tenk på det som registeret, med plugin.json som den individuelle pakken inni.
Installere fra markedsplasser
Å få en plugin til maskinen din er to kommandoer. Først, pek Claude Code mot en markedsplass:
/plugin marketplace add anthropic/plugins
Dette leser den repositoryens marketplace.json og legger til hver plugin den lister opp i det du kan bla gjennom. Deretter installer en:
/plugin install code-standards@anthropic
Delen @anthropic spesifiserer hvilken markedsplass som skal hentes fra, siden du kan ha flere lagt til samtidig og samme plugin-navn teoretisk kan eksistere i mer enn én. Claude Code henter pluginens filer, registrerer dens ferdigheter og kommandoer, og kobler opp eventuelle hooks eller MCP-servere den erklærer.
Her er delen som burde høres kjent ut hvis du har lest noe annet vi har skrevet: ingen gjennomgår disse. Å legge til en markedsplass betyr å stole på den som vedlikeholder den repositoryen, og å installere en plugin fra den betyr å stole på hver fil pluginen bringer med seg, inkludert hooks som kjører shell-kommandoer og MCP-servere som får nettverkstilgang. Dette er nøyaktig tillitsproblemet vi har dokumentert for ferdigheter, bare at en plugin har flere bevegelige deler, noe som betyr flere steder for noe dårlig å gjemme seg. En ferdighet kan bare være overbevisende tekst lastet inn i kontekst. En plugin kan også være en hook som utføres ved hver commit uavhengig av om du ser på eller ikke.
Vår sikkerhetssjekkliste for ferdigheter gjelder her med ett tillegg. Før du installerer en plugin:
- Les manifestet og hver fil det refererer til før du kjører installasjonskommandoen, ikke etter. En
plugin.jsonsom hevder å være en "deploy-hjelper" som også erklærer en MCP-server som peker på et ukjent domene, er et signal verdt å stoppe opp ved. - Fest versjonen. Installer
code-standards@1.2.0, ikke hva ennlatestløser seg til neste tirsdag. En plugin som endrer sin hook-oppførsel etter at du allerede har stolt på den, er verre enn en som var dårlig fra dag én, fordi du ikke vil se etter. - Sjekk spesifikt hvilke hooks og kommandoer som leveres. Hooks kjører automatisk, uten at du skriver noe, ved hendelser som verktøykall og filsparing. Det er komponenten som er mest verdt å lese i sin helhet, siden det er den som handler uten en prompt fra deg i øyeblikket.
- Behandle en MCP-server bundlet i en plugin som enhver annen MCP-server: den får ekte nettverkstilgang og ofte ekte legitimasjon. Å bunte den inne i en plugin gjør den ikke tryggere, den gjør den bare enklere å installere uten å legge merke til at den er der.
Vi dekker hele trusselmodellen, inkludert hva en ondsinnet hook eller ferdighet faktisk ser ut som i praksis, i vår sikkerhetsguide for ferdigheter. Alt der om å behandle tredjepartsinstruksjoner som en avhengighet du ikke har revidert, gjelder for plugins, bare med en større sprengradius.
GRATIS STARTERPAKKE
Før du legger til din første markedsplass, få våre 3 topp-scorede ferdigheter og installasjonslisten vi kjører på hver plugin og ferdighet før vi publiserer en dom, gratis.
Få gratis starterpakkeNår du skal pakke teamets oppsett som en plugin
Det tydeligste signalet du er klar for en plugin: du har skrevet de samme oppsettinstruksjonene i en README, en Slack-pin, og et onboarding-dokument, og de er allerede ute av synkronisering på to av de tre stedene.
Ta et konkret tilfelle. Et plattformteam ønsker at hver ingeniørs Claude Code-økt skal håndheve de samme standardene: ingen direkte commits til main, en konsekvent kode-gjennomgangspass før merge, og en ett-kommando deploy til staging. Bundlet separat, det er en hook noen må huske å legge til i settings.json, en ferdighet noen må huske å installere, og en kommando noen må huske eksisterer. Bundlet som en team-standards-plugin, er det én linje:
/plugin install team-standards@our-org
og hver nyansatt får branch-protection hooken, kode-gjennomgangs-sjekkliste-ferdigheten, og /deploy-kommandoen i ett steg, versjonert sammen slik at en oppdatering til deploy-skriptet og en oppdatering til gjennomgangskriteriene leveres i samme utgivelse i stedet for å drive fra hverandre.
Det motsatte signalet er også viktig: hvis oppsettet ditt er en enkelt ferdighet uten hooks, kommandoer, eller MCP-avhengighet, legger pakking som en plugin til et manifest og en markedsplass-oppføring uten fordeler. Publiser det som en ferdighet alene, slik vi dekker i hva Claude-ferdigheter er, og nå etter en plugin bare når det er mer enn én bevegelig del å holde i synkronisering. Hvis MCP-serveren er den kompliserte delen av oppsettet ditt, lever notatene våre om å bygge en i MCP Builder, som er verdt en titt før du bestemmer deg for om en plugin trenger sin egen server i det hele tatt versus å peke på en som allerede eksisterer.
Vår egen 30-minutters Claude Code oppsettsguide går gjennom å bygge dette laget for lag for en individuell; en team-plugin er den samme lagdelingsøvelsen, bare versjonert og delt i stedet for satt sammen manuelt på hver laptop.
Økosystemet i 2026, ærlig talt
Plugins er unge, og det vises. Markedsplassformatet stabiliserte seg først for noen måneder siden, noe som betyr at de fleste marketplace.json-filer i omløp ble skrevet mot et tidlig utkast av spesifikasjonen og ikke har blitt rørt siden. Dokumentasjonskvaliteten varierer enormt: noen plugin-repoer har en klar README med en versjonshistorikk, andre er en enkelt commit uten forklaring på hva den bundlete hooken faktisk gjør.
Fragmentering er det større problemet. Fordi en plugin kan erklære sine egne ferdigheter i stedet for å referere til de du allerede har installert, blir den samme oppførselen gjenskapt på tvers av et dusin forskjellige plugins med et dusin forskjellige kvalitetsnivåer. Vi har sett en kode-gjennomgangs-ferdighet bundlet inne i tre urelaterte plugins, ingen klar over at de andre eksisterer, hver skrevet til en annen standard.
Det produserer samme kvalitetslotteri som vi dokumenterte på tvers av fellesskapsferdigheter generelt: omtrent halvparten av det vi tester feiler ved første forsøk, enten fra et installasjonsskript som antar en katalogstruktur forfatteren aldri verifiserte på en ren maskin, eller en hook som stille ingen-opererer fordi den ble skrevet mot en tidligere versjon av hook API-et. En plugin fikser ikke den feilraten. Den bare bunter flere komponenter som hver kan feile uavhengig, og en plugin fungerer bare hvis hver del inni den gjør det.
Ingen av delene betyr at du skal hoppe over plugins. Det betyr å anvende den samme skepsisen du ville anvendt på enhver avhengighet: sjekk hvem som vedlikeholder den, sjekk når den sist ble oppdatert, og ikke installer noe med tre komponenter når du bare trenger én av dem. Pakkeformatet er genuint nyttig for å holde et team synkronisert. Det er ikke en erstatning for å lese hva du installerer.
SKILLPROOF PAKKE
Hvis du bestemmer deg for hva du skal bunte inn i din egen team-plugin, er Developer Toolkit en snarvei: våre topp-scorede kodingsferdigheter, allerede sjekket for trigger-konflikter, klare til å foldes inn i en plugin eller installeres direkte.
Få Developer Toolkit — $10FAQ
Hva er forskjellen mellom en Claude Code plugin og en ferdighet?
En ferdighet er én oppførsel i én markdown-fil. En plugin er en distribusjonsenhet som kan bunte flere ferdigheter sammen med subagenter, hooks, slash-kommandoer og en MCP-server, alt installert sammen med én kommando og ett versjonsnummer. Hver plugins ferdigheter er fortsatt ferdigheter under; pluginen er bare pakken rundt dem.
Hvordan installerer jeg en Claude Code plugin?
Legg til markedsplassen først med /plugin marketplace add <repo>, deretter installer en spesifikk plugin fra den med /plugin install <plugin-name>@<marketplace>. Fest en versjon i stedet for å installere hva enn markedsplassen for øyeblikket peker til som siste, slik at en oppdatering ikke stille endrer oppførsel du allerede har gjennomgått.
Er Claude Code plugins trygge å installere?
Behandle dem slik du ville behandlet enhver tredjepartsavhengighet, og mer forsiktig enn en vanlig ferdighet, siden en plugin også kan levere hooks som kjører shell-kommandoer automatisk og MCP-servere med ekte nettverkstilgang. Les manifestet og hver bundlete fil før installasjon, ikke etter. Vår sikkerhetsguide for ferdigheter dekker den underliggende trusselmodellen i detalj.
Kan jeg legge min egen MCP-server inne i en plugin?
Ja. En plugin kan erklære en .mcp.json som konfigurerer en MCP-server som en del av installasjonen, slik at lagkamerater får tilkoblingen satt opp automatisk i stedet for å konfigurere den manuelt i hvert prosjekt. Hvis du bygger selve serveren i stedet for bare å koble til en som allerede eksisterer, se MCP Builder for byggedelen av det.
Hvor finner jeg Claude Code plugins å installere?
Anthropic vedlikeholder en offisiell markedsplass, og fellesskapsmarkedsplasser har vokst raskt siden formatet ble lansert. Kvaliteten varierer like mye som den gjør på tvers av fellesskapsferdigheter generelt, så sjekk manifestet, sjekk når det sist ble oppdatert, og foretrekk plugins fra vedlikeholdere som dokumenterer hva som faktisk er inne før du legger til deres markedsplass.
★ 9.6/10 × 3
Den gratis startpakken
De 3 skillsene med våre høyeste testscorer pluss installasjonssjekklisten — oppsettet vi selv ville lagt på en fersk maskin. Gratis, på e-post.