Claude Code pluginit: mikä on plugin, mistä niitä saa ja näin teet oman

Claude Coden plugin niputtaa skillit, subagentit, hookit ja MCP-palvelimet yhdeksi paketiksi. Näin asennat pluginin /plugin-komennolla, valitset asennusalueen ja teet oman pluginin ja markkinapaikan tiimillesi.

VVibekoodaus12 min

Jos olet jo kirjoittanut pari omaa skilliä, hookin ja MCP-asetuksen, tiedät ongelman. Kaikki toimii omalla koneella, mutta kun kollega kysyy "miten saan saman setupin", vastaus on kopioitavien tiedostojen lista ja ohje siitä, mihin mikäkin laitetaan.

Plugin ratkaisee juuri tämän. Claude Coden plugin on hakemisto, joka niputtaa skillit, subagentit, hookit ja MCP-palvelimet yhdeksi kokonaisuudeksi, jonka Claude Code asentaa ja lataa kerralla. Pluginit jaetaan markkinapaikkojen (marketplace) kautta, ja ne asennetaan /plugin-komennolla.

Käydään läpi, mitä pluginin sisällä on, miten sellainen asennetaan, mitä se maksaa kontekstissa ja miten teet oman pluginin ja tiimille oman markkinapaikan. Kaikki komennot ja tiedostopolut ovat Claude Coden virallisesta dokumentaatiosta.


Mikä on Claude Code plugin?

Plugin on tavallinen hakemisto. Sen juuressa on yleensä manifesti .claude-plugin/plugin.json, joka antaa pluginille nimen ja halutessasi version, kuvauksen ja tekijän. Varsinainen sisältö on muissa kansioissa:

  • Skillit kansiossa skills/: SKILL.md-ohjeita, jotka Claude lataa tarvittaessa ja jotka voit ajaa myös komentona. Skilleistä enemmän skillien oppaassa.
  • Subagentit kansiossa agents/: agenttimäärittelyjä, joille Claude voi delegoida töitä. Ks. subagentit.
  • Hookit tiedostossa hooks/hooks.json: komentoja, jotka Claude Code ajaa tietyissä kohdissa, esimerkiksi jokaisen muokkauksen jälkeen. Ks. Claude Code hooks.
  • MCP-palvelimet tiedostossa .mcp.json: työkalupalvelimia, joihin Claude Code yhdistää, kun plugin on päällä. Ks. Claude Code ja MCP.

Mikään osa ei ole pakollinen. Pienin toimiva plugin sisältää yhden skillin.

Yksi asia muuttuu, kun skill siirtyy pluginin sisään: sen nimeen tulee pluginin nimi etuliitteeksi. Jos pluginin nimi on my-plugin ja skillin nimi review, ajat sen komennolla /my-plugin:review. Näin kaksi eri pluginia voi tarjota kumpikin review-nimisen skillin ilman törmäystä.

Sekaannusta aiheuttaa usein sana "plugin" itse. VS Coden laajennus ja JetBrainsin plugin ovat tapoja ajaa Claude Codea editorissa, eivät Claude Coden plugineja. Niistä kerrotaan erikseen artikkelissa Claude Code VS Codessa, JetBrainsissa ja työpöydällä.

Tarvitsetko pluginia vai riittääkö pelkkä skill?

Skillit, subagentit, hookit ja MCP-palvelimet toimivat kaikki myös ilman pluginia. Kansioon ~/.claude/skills/ tallennettu skill on käytössä jokaisessa projektissa omalla koneellasi, eikä siihen tarvita pakettia.

Dokumentaatio vetää rajan selvästi: pidä erillinen setup niin kauan kuin se palvelee yhtä projektia tai vain sinua. Plugin kannattaa tehdä, kun haluat

  • jakaa setupin tiimille,
  • asentaa saman kokonaisuuden moneen projektiin tai
  • julkaista versioituja päivityksiä.

Toisen tekemän pluginin asentaminen on taas helppo tapa saada valmis kokonaisuus yhdellä komennolla, ja päivitykset tulevat markkinapaikasta.

Mikä on markkinapaikka?

Markkinapaikka on repositorio tai hakemisto, jossa on tiedosto .claude-plugin/marketplace.json. Se luettelee pluginit ja kertoo, mistä kukin haetaan. Kyse on siis luettelosta, ei kaupasta, joka isännöisi tiedostoja.

Claude Code lisää Anthropicin virallisen markkinapaikan claude-plugins-official automaattisesti, kun käynnistät ensimmäisen interaktiivisen terminaali-istunnon. Muut markkinapaikat lisäät itse kerran, minkä jälkeen niiden pluginit asentuvat nimellä muodossa plugin@markkinapaikka.

Markkinapaikat jaetaan nimen perusteella kolmeen tasoon:

TasoMitä se tarkoittaa
OfficialAnthropicin viralliset nimet, kuten claude-plugins-official ja claude-code-plugins
CommunityAnthropicin yhteisönimet, kuten claude-community
Third-partyKaikki muut, myös kollegan tai oman organisaatiosi markkinapaikka

Claude Code hyväksyy virallisen ja yhteisötason nimet vain markkinapaikoille, jotka tulevat github.com/anthropics/-repositorioista. Kolmannen osapuolen markkinapaikka ei siis voi esiintyä Anthropicin nimellä. Taso kertoo kuitenkin vain, kuka luetteloa ylläpitää, ei sitä, mitä yksittäinen plugin tekee.

Näin asennat pluginin /plugin-komennolla

Dokumentaation esimerkkiplugin on commit-commands virallisesta markkinapaikasta. Se lisää komennot committaamiseen, pushaamiseen ja pull requestien avaamiseen. Sama polku toimii mille tahansa pluginille.

Käynnistä Claude Code projektissasi komennolla claude ja aja:

/plugin install commit-commands@claude-plugins-official

Istunnossa komento ei asenna heti. Se avaa /plugin-paneelin pluginin tietoihin, jotta voit katsoa sisällön ja valita asennusalueen ensin. Jos haluat selata, aja pelkkä /plugin: paneeli aukeaa Discover-välilehdelle, jossa voit hakea kirjoittamalla.

Tietonäkymästä kannattaa lukea ainakin kaksi kohtaa:

  • Will install listaa komennot, agentit, skillit, hookit sekä MCP- ja LSP-palvelimet, jotka plugin lisää.
  • Context cost näyttää virallisen markkinapaikan plugineille kaksi token-arviota: mitä plugin lisää jokaiseen viestiin ja mitä sen skillit ja agentit lisäävät, kun Claude lataa ne. Arvio näkyy, kun avaat pluginin nimeämällä markkinapaikan kuten yllä, tai Marketplaces-välilehdeltä. Discover-listan kautta avatussa näkymässä sitä ei ole.

Seuraavaksi valitset asennusalueen, ja Claude Code asentaa pluginin. Yhteenvedon viimeinen lause kertoo, voiko pluginia käyttää heti. Jos siinä lukee Plugin is now active., mitään ei tarvitse tehdä. Jos siinä lukee Run /reload-plugins to apply., Claude Code ajaa uudelleenlatauksen puolestasi, kun paneeli sulkeutuu.

Toimiiko se? Kirjoita / ja etsi pluginin skillit sen nimen alta. commit-commands-pluginilla listaan ilmestyy /commit-commands:commit. Asennetut pluginit näkyvät myös /plugin-paneelin Installed-välilehdellä.

Asennusalueet: user, project ja local

Asennusalue ratkaisee, kenelle plugin on päällä ja mihin asetustiedostoon se kirjataan:

AlueKenelleTiedosto
UserSinulle kaikissa projekteissa tällä koneella~/.claude/settings.json
ProjectKaikille, jotka työskentelevät repositoriossa.claude/settings.json (commitoidaan)
LocalSinulle vain tässä repositoriossa.claude/settings.local.json

Merkintä menee avaimen enabledPlugins alle. Jos sama plugin on asetettu usealla tasolla, local voittaa projectin ja project voittaa userin.

Project-alueessa on yksi kompastuskivi. Commitoitu merkintä kytkee pluginin päälle kollegoille, mutta ei lataa sitä heidän koneelleen. Jokainen ajaa kerran kloonia kohden:

claude plugin install nimi@markkinapaikka --scope project

Tiimin repositorion .claude/settings.json voi näyttää tältä. Avain extraKnownMarketplaces rekisteröi tiimin markkinapaikan kaikille, jotka avaavat repositorion, ja enabledPlugins kytkee pluginit päälle:

{
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": {
        "source": "github",
        "repo": "acme-corp/claude-plugins"
      }
    }
  },
  "enabledPlugins": {
    "code-formatter@acme-tools": true,
    "commit-commands@claude-plugins-official": true
  }
}

Claude Code huomioi repositorion extraKnownMarketplaces-merkinnät vasta, kun olet hyväksynyt kansion luottamusdialogin (workspace trust). Asetustiedostojen tasoista ja oikeussäännöistä kerrotaan tarkemmin artikkelissa Claude Code oikeudet ja asetukset.

Pluginien hallinta komentoriviltä

Kaiken saa tehtyä myös suoraan shellistä ilman istuntoa, esimerkiksi asennusskriptissä:

# Asenna (oletuksena user-alueelle)
claude plugin install formatter@your-org --scope project

# Listaa asennetut, mukana Version, Scope ja Status
claude plugin list

# Kytke pois ja takaisin päälle
claude plugin disable formatter@your-org
claude plugin enable formatter@your-org

# Poista project-alueelta
claude plugin uninstall formatter@your-org --scope project

Shellistä asennetut pluginit latautuvat seuraavassa istunnossa, tai heti kun ajat avoimessa istunnossa /reload-plugins.

Uudella koneella, jolla kukaan ei ole vielä avannut interaktiivista istuntoa, virallista markkinapaikkaa ei ole vielä rekisteröity. Skriptin kannattaa silloin lisätä se ensin:

claude plugin marketplace add anthropics/claude-plugins-official

Muun markkinapaikan lisäät samalla tavalla. Lähteeksi käy GitHub-repositorio muodossa owner/repo, mikä tahansa git-osoite https://-alkuisena, paikallinen hakemisto (aloita suhteellinen polku ./) tai https://-osoite marketplace.json-tiedostoon. Istunnon sisällä sama komento on /plugin marketplace add.

Pluginien päivittäminen ja poistaminen

Plugin päivittyy itsestään, jos sen markkinapaikassa on automaattinen päivitys päällä. Claude Code päivittää silloin levyllä olevat kopiot istunnon alettua, mutta käynnissä oleva istunto pitää jo lataamansa version. Näet viestin Plugin updated, ja uusi versio latautuu komennolla /reload-plugins tai seuraavassa istunnossa.

Käsin päivität yhden pluginin Installed-välilehdeltä valinnalla Update now tai shellissä:

claude plugin update commit-commands@claude-plugins-official

Kaikkia plugineja kerralla päivittävää komentoa ei ole. Yhden markkinapaikan kaikki pluginit saa päivitettyä Marketplaces-välilehden valinnalla Update marketplace. Pelkkä claude plugin marketplace update ilman nimeä päivittää vain luettelot, ei asennettuja plugineja.

Poistossa on kaksi yksityiskohtaa, jotka on hyvä tietää etukäteen:

  • Jos poistat pluginin, jonka repositorion .claude/settings.json kytkee päälle, Claude Code kysyy, mitä tarkoitat. Näppäin y kytkee sen pois vain sinulta tiedostoon .claude/settings.local.json, ja u poistaa sen jaetusta tiedostosta kaikilta.
  • Jos plugin on asentanut riippuvuuksia, ne jäävät koneelle poiston jälkeen, kunnes ajat claude plugin prune.

Kun poistat kokonaisen markkinapaikan, Claude Code poistaa samalla kaikki siitä asennetut pluginit. Marketplaces-välilehti näyttää ne ennen vahvistusta.

Mitä plugin maksaa kontekstissa

Tämä jää helposti huomaamatta. Päällä oleva plugin on mukana jokaisessa istunnossa, ei vain niissä, joissa käytät sitä.

Jokaisen skillin, agentin ja komennon nimi ja kuvaus, jonka Claude voi kutsua itse, on Clauden kontekstissa joka vuorolla, jotta Claude tietää sen olemassaolosta. Nämä tokenit lasketaan käyttöösi ja vievät tilaa konteksti-ikkunasta silloinkin, kun pluginista ei ajeta mitään. Skillin tai agentin koko teksti latautuu vasta, kun sitä käytetään. Lisäksi pluginin MCP-palvelimet pyörivät istunnon rinnalla ja hookit laukeavat tapahtumissaan.

Jalanjäljen voi tarkistaa kolmessa vaiheessa:

  1. Ennen asennusta katso tietonäkymän arvio kohdasta Context cost.
  2. Asennuksen jälkeen aja claude plugin details nimi. Rivi Always-on kertoo, montako tokenia plugin lisää jokaiseen istuntoon.
  3. Siivotessa katso Installed-välilehden ryhmää Not used recently. Siinä ovat itse asentamasi pluginit, joita et ole käyttänyt hetkeen.

Jos et halua poistaa pluginia, kytke se pois /plugin-paneelista tai komennolla claude plugin disable. Kontekstin hallinnasta laajemmin kerrotaan artikkelissa Claude Code konteksti ja muisti.

Ovatko pluginit turvallisia?

Dokumentaatio sanoo asian suoraan: asentamasi plugin voi ajaa mitä tahansa koodia koneellasi sinun käyttöoikeuksillasi. Tämä pätee markkinapaikasta riippumatta.

Pluginin hookit ajetaan shell-komentoina. MCP-palvelimet käynnistyvät prosesseina koneellasi, ja pluginin bin/-kansio lisätään Bash-työkalun PATH-muuttujaan. Tärkein yksityiskohta on tämä: Claude Coden oikeussäännöt ja hiekkalaatikko koskevat Clauden tekemiä työkalukutsuja, eivät koodia, jonka plugin ajaa itse. Hookit, MCP-palvelimet ja LSP-palvelimet ajetaan hiekkalaatikon ulkopuolella.

Myös automaattiset päivitykset kannattaa tuntea. Virallisilla markkinapaikoilla ne ovat oletuksena päällä, yhteisö- ja kolmannen osapuolen markkinapaikoilla pois päältä. Kun automaattinen päivitys on päällä, lukemasi tiedostot voivat vaihtua levyllä taustalla.

Käytännön tarkistuslista ennen asennusta:

  • Aja claude plugin marketplace list ja katso, mistä markkinapaikka on lisätty.
  • Lue tietonäkymän lista kohdassa Will install. Hookit ja MCP-palvelimet ovat ne osat, jotka ajavat koodia.
  • Avaa pluginin repositorio ja lue hooks/hooks.json ja .mcp.json, ennen kuin asennat tuntemattomasta lähteestä.

Näin teet oman pluginin

Oma plugin syntyy muutamassa minuutissa. Esimerkissä pluginissa on yksi skill.

1. Luo hakemisto ja manifesti.

mkdir -p my-first-plugin/.claude-plugin
mkdir -p my-first-plugin/skills/hello

Tallenna tiedostoksi my-first-plugin/.claude-plugin/plugin.json:

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

Vain name on pakollinen. Siitä tulee etuliite pluginin jokaiselle skillille ja agentille, eikä siinä saa olla välilyöntejä. Kentällä version lukitset käyttäjät tiettyyn versioon, kunnes vaihdat sen.

2. Lisää skill. Tiedosto my-first-plugin/skills/hello/SKILL.md:

---
name: hello
description: Greet the user with a friendly message
disable-model-invocation: true
---

Greet the user warmly and ask how you can help them today.

Rivi disable-model-invocation: true estää Claudea ajamasta skilliä omasta aloitteestaan. Poista se, jos haluat Clauden käyttävän skilliä itse.

3. Validoi ja testaa.

claude plugin validate ./my-first-plugin
claude --plugin-dir ./my-first-plugin

Validointi tarkistaa manifestin ja skillin frontmatterin ja tulostaa onnistuessaan Validation passed. Lippu --plugin-dir lataa pluginin yhdeksi istunnoksi asentamatta sitä. Aja istunnossa /my-first-plugin:hello, niin Claude tervehtii. Kun muokkaat tiedostoja istunnon aikana, /reload-plugins lataa muutokset.

Isomman pluginin rakentamiseen virallisessa markkinapaikassa on apuplugin plugin-dev. Kun se on asennettu, aja /plugin-dev:create-plugin ja kuvaile, millaisen pluginin haluat. Claude käy suunnittelun, tiedostot ja validoinnin läpi kanssasi.

Hakemistorakenteessa yksi virhe on yleisempi kuin muut: vain plugin.json kuuluu kansioon .claude-plugin/. Jos skills/ on sen sisällä, plugin latautuu mutta skillit puuttuvat.

SijaintiSisältö
.claude-plugin/plugin.jsonManifesti
skills/Yksi nimi/SKILL.md-kansio skilliä kohden
agents/Yksi Markdown-tiedosto subagenttia kohden
hooks/hooks.jsonHookit samassa muodossa kuin asetustiedoston hooks
.mcp.jsonMCP-palvelimien määrittelyt

Olemassa olevan .claude-kansion muuttaminen pluginiksi

Jos skillit, agentit ja hookit ovat jo projektin .claude/-kansiossa, niitä ei tarvitse kirjoittaa uudelleen. Luo pluginin hakemisto ja manifesti, kopioi kansiot ja siirrä hookit:

mkdir -p my-plugin/.claude-plugin my-plugin/hooks
cp -r .claude/skills my-plugin/
cp -r .claude/agents my-plugin/

Kopioi sitten asetustiedoston hooks-objekti tiedostoon my-plugin/hooks/hooks.json avaimen "hooks" alle. Muoto on sama.

Testaa --plugin-dir-lipulla ja poista alkuperäiset vasta sen jälkeen. Siihen asti molemmat ovat ladattuna. Skillit eivät törmää, koska pluginin versiolla on etuliite, mutta hookeilla etuliitettä ei ole. Sama hook ajetaan silloin kahdesti joka kerta.

Oma markkinapaikka tiimille

Kun plugin on valmis, sen voi lähettää muutamalle ihmiselle hakemistona tai .zip-tiedostona. Tiimille oma markkinapaikka on parempi, koska kollegat lisäävät sen kerran ja saavat päivitykset sen kautta. Huomaa, että kolmannen osapuolen markkinapaikoilla automaattinen päivitys on oletuksena pois päältä. Sen voi kytkeä päälle /plugin-paneelin Marketplaces-välilehdeltä.

Markkinapaikka on hakemisto, jossa on .claude-plugin/marketplace.json ja listatut pluginit:

mkdir -p my-marketplace/.claude-plugin my-marketplace/plugins
cp -r my-first-plugin my-marketplace/plugins/

Tiedosto my-marketplace/.claude-plugin/marketplace.json tarvitsee kentät name, owner ja plugins:

{
  "name": "my-marketplace",
  "description": "Plugins for my team",
  "owner": {
    "name": "Your Name"
  },
  "plugins": [
    {
      "name": "my-first-plugin",
      "source": "./plugins/my-first-plugin",
      "description": "A greeting plugin to learn the basics"
    }
  ]
}

Kokeile koko kierros omalla koneellasi ennen jakamista:

claude plugin validate ./my-marketplace
claude plugin marketplace add ./my-marketplace
claude plugin install my-first-plugin@my-marketplace
claude plugin list

Kaksi sääntöä säästää eniten selvittelyä. Kirjoita source-polku markkinapaikan juuresta eli siitä hakemistosta, jossa .claude-plugin/ on, äläkä käytä polussa ..-osaa. Pidä lisäksi marketplace.json-merkinnän name samana kuin pluginin oman plugin.json-tiedoston name. Jos ne eroavat, asennus manifestin nimellä epäonnistuu.

Kun hakemisto on pushattu git-palveluun, kollegat lisäävät sen komennolla /plugin marketplace add your-org/plugins. Yksityinen repositorio toimii, kunhan koneen git-tunnukset riittävät kloonaukseen. Claude Code ei kysy tunnuksia itse.

Pluginit VS Codessa, työpöytäsovelluksessa ja pilvessä

Terminaali ei ole ainoa paikka hallita plugineja:

  • VS Code: kirjoita Claude-paneelin kehotteeseen /plugins, niin aukeaa näkymä Manage plugins, jossa on välilehdet Plugins ja Marketplaces.
  • Työpöytäsovellus: Code-välilehden paikallisessa tai SSH-istunnossa paina kehotteen vieressä + ja valitse Add plugins.
  • JetBrains: plugin ajaa Claude Codea IDE:n terminaalissa, joten käytä samaa /plugin-komentoa kuin terminaalissa.
  • claude -p: /plugin ei toimi ei-interaktiivisessa ajossa, mutta jo asennetut pluginit latautuvat. Hallitse niitä claude plugin-komennoilla. Ks. Claude Code headless ja automaatio.

Samalla koneella terminaali, työpöytäsovelluksen paikalliset istunnot ja VS Coden laajennus lukevat samoja asetustiedostoja. User-alueelle yhdessä asennettu plugin on siis käytössä kahdessa muussakin.

Pilvi-istunto on poikkeus. Esimerkiksi selaimessa claude.ai/code ei lataa omalle koneellesi asennettuja plugineja eikä niitä, jotka repositorion .claude/settings.json kytkee päälle. Jos tarvitset saman toiminnallisuuden pilvessä, commitoi skillit ja agentit repositorion .claude/-kansioon, sillä ne tulevat kloonin mukana.

Mistä kannattaa aloittaa

Aloita yhdellä pluginilla virallisesta markkinapaikasta. Aja /plugin, valitse jotain oikeasti tarpeellista ja katso tietonäkymästä, mitä se asentaa. Tarkista viikon päästä Installed-välilehdeltä ryhmä Not used recently ja poista turhat.

Jos sinulla on jo toimiva .claude/-setup ja tiimi, joka haluaisi saman, tee siitä plugin ja laita se tiimin markkinapaikkaan. Projektin perussäännöt kuuluvat silti edelleen CLAUDE.md-tiedostoon. Plugin tuo työkalut, CLAUDE.md kertoo, miten juuri tässä projektissa toimitaan.

Skillit, hookit ja pluginit ovat yhdessä Claude Code -oppaiden sivun laajentamisosiossa.

Usein kysytyt kysymykset

Mikä on Claude Code plugin?

Plugin on hakemisto, jossa on skillejä, subagentteja, hookeja, MCP-palvelimia tai muita osia, ja yleensä manifesti .claude-plugin/plugin.json. Claude Code asentaa ja lataa sen yhtenä kokonaisuutena.

Miten Claude Code plugin asennetaan?

Aja Claude Coden istunnossa /plugin ja valitse plugin Discover-välilehdeltä, tai aja /plugin install nimi@markkinapaikka. Valitset vielä asennusalueen: käyttäjä, projekti tai paikallinen. Komentoriviltä sama onnistuu komennolla claude plugin install.

Mitä eroa on pluginilla ja skillillä?

Skill on yksi SKILL.md-ohje, joka toimii myös ilman pluginia. Plugin on paketti, johon voi koota useita skillejä, subagentteja, hookeja ja MCP-palvelimia, jotta ne asentuvat ja päivittyvät yhdellä kertaa.

Ovatko Claude Code pluginit turvallisia?

Plugin voi ajaa koodia koneellasi sinun käyttöoikeuksillasi, mistä markkinapaikasta se sitten tuleekin. Hookit ja MCP-palvelimet ajetaan hiekkalaatikon ulkopuolella, joten pluginin sisältö kannattaa lukea ennen asennusta.

Toimivatko pluginit VS Codessa ja selaimessa?

VS Codessa ja työpöytäsovelluksessa on oma pluginien hallinta, ja ne lukevat samoja asetustiedostoja kuin terminaali. Pilvi-istunto, kuten claude.ai/code selaimessa, ei lataa omalle koneellesi asennettuja plugineja.

Claude Code pluginit: mikä on plugin, mistä niitä saa ja näin teet oman