Hoppa till huvudinnehållet

Hur du bygger Claude Code‑plugin: en steg‑för‑steg‑guide

En komplett guide till Claude Code‑plugin. Lär dig installera tillägg, välja mellan Skills och MCP:er och bygga en anpassad sessionslogg från grunden.
Uppdaterad 22 juli 2026  · 9 min läsa

Utforska med AI

Öppna i ChatGPTÖppna i ClaudeÖppna i Perplexity

Claude Code hanterar de flesta utvecklingsuppgifter direkt, men varje team har specifika arbetsflöden som standardinställningarna inte täcker. Du kanske vill ha ett anpassat kommando som skapar komponenter enligt företagets föredragna struktur, automatisk lintning före varje commit eller snabb åtkomst till dokumentation för ett ramverk du använder ofta.

Med Claude Code‑plugin kan du lägga till dessa funktioner själv. Du kan installera plugin byggda av communityt eller skapa egna.

Om du är ny till Anthropic’s agentiska kodningsverktyg rekommenderar jag att du börjar med Guiden till Claude Code eller Introduktion till Claude‑modeller. Den här genomgången förutsätter att du har installerat Claude Code och använt det för grundläggande uppgifter.

I slutet kommer du att veta hur du:

  • Hittar och installerar plugin från Anthropics katalog och communitykällor
  • Förstår de tre komponenttyper som plugin kan innehålla
  • Väljer rätt typ för olika användningsfall
  • Bygger och delar dina egna plugin

För en översikt av kapabiliteterna i Anthropics senaste modell, kolla in vår guide om Claude Sonnet 5.

TL;DR

  • Claude Code‑plugin paketerar skills, MCP‑servrar och hooks till delningsbara paket som du installerar med claude plugin add

  • Skills laddas vid behov (~100 token vardera); MCP‑servrar förladdar verktygsdefinitioner (minskat av Tool Search); hooks körs som shell‑skript utan tokenskostnad

  • Använd skills för kunskap och arbetsflöden, MCP‑servrar för extern API‑åtkomst och hooks för regler som måste köras varje gång

  • Bygg ett plugin med tre filer: ett .claude-plugin/plugin.json‑manifest, en skills/‑katalog och en SKILL.md‑instruktionsfil

Vad är Claude Code‑plugin?

Ett plugin är ett paket som buntar en eller flera Claude Code‑förlängningar för enkel delning och installation. I stället för att manuellt kopiera konfigurationsfiler mellan datorer eller teammedlemmar kan du slå in allt i ett plugin och distribuera det som en enhet.

Plugin kan innehålla tre typer av komponenter:

  • Skills: Anpassade kommandon som du anropar med /skill-name, eller kontextmedvetna promptar som Claude använder automatiskt när det är relevant

  • MCP‑servrar: Anslutningar till externa tjänster och API:er som ger Claude åtkomst till data den annars inte skulle ha

  • Hooks: Shell‑skript som körs automatiskt vid specifika händelser, som före en fil redigeras eller efter en commit

Ett plugin kan innehålla bara en av dessa, eller kombinera flera som fungerar tillsammans. Ett ”deploy”‑plugin kan till exempel inkludera en /deploy‑skill för manuella utrullningar, en MCP‑server som kollar status på din stagingmiljö och en hook som kör tester innan något deploy‑kommando exekveras.

Manifestfilen plugin.json definierar vad ett plugin innehåller. Den anger vilka skills, MCP‑servrar och hooks som ska installeras, tillsammans med metadata som plugin‑namn, version och författare. När du installerar ett plugin läser Claude Code detta manifest och ställer in varje komponent på rätt plats.

Detta paketeringsformat innebär att du inte behöver förstå den interna filstrukturen för Claude Code‑förlängningar. Du installerar pluginet, och allt hamnar där det ska.

Hitta och installera Claude Code‑plugin

De flesta plugin finns på ett av två ställen. Anthropics officiella katalog på claude.com/plugins inkluderar plugin byggda av Anthropic, verifierade communitybidrag och populära tredjepartsförlängningar. Varje listning visar vilka komponenter pluginet innehåller, kompatibilitetsinformation och installationsinstruktioner.

Den andra källan är GitHub:

När du har hittat ett plugin du vill ha beror installationskommandot på var det finns:

# From the official directory
claude plugin add @anthropic/deploy-helper
 
# From a GitHub repository
claude plugin add github:username/repo-name
 
# From a local directory (useful during development)
claude plugin add ./my-plugin

Efter att ha installerat några plugin vill du hålla koll på dem. plugin‑kommandot hanterar listning, uppdatering och borttagning:

# List all installed plugins
claude plugin list
 
# Update a specific plugin to the latest version
claude plugin update @anthropic/deploy-helper
 
# Update all plugins
claude plugin update --all
 
# Remove a plugin
claude plugin remove @anthropic/deploy-helper

Ett val du gör under installationen är omfånget. Plugin kan leva på två ställen: användaromfång installerar till ~/.claude/plugins/ och fungerar i alla dina projekt, medan projektomfång installerar till .claude/plugins/ inom ett specifikt repository.

Standard är användaromfång. För att installera ett plugin bara för det aktuella projektet, lägg till flaggan --project:

claude plugin add @anthropic/deploy-helper --project

Plugin i projektomfång är rimliga när förlängningen knyter an till en specifik kodbas. 

Ett plugin som känner till ditt företags deployprocess hör hemma i det projektet. Ett plugin som formaterar kod enligt dina personliga preferenser hör hemma på användarnivå. När ett plugin finns i båda omfången har projektversionen företräde, vilket låter team upprätthålla projektspecifika konfigurationer samtidigt som utvecklare kan behålla sina personliga plugin aktiva någon annanstans.

Välja rätt typ av Claude Code‑plugin

De tre komponenttyperna fyller olika syften och förbrukar token i kontextfönstret på olika sätt. Att förstå dessa avvägningar hjälper dig att välja rätt för varje uppgift.

Skills vs MCP‑servrar: tokenavvägningen

MCP‑servrar förladdar varje verktygsdefinition i ditt kontextfönster vid sessionsstart. Varje verktyg behöver sitt namn, beskrivning och fullständigt parameterschema, vilket brukar bli 100–300 token per verktyg. En uppsättning med fem servrar förbrukar cirka 55 000 token innan du skrivit ett enda tecken:

  • GitHub: 35 verktyg
  •  Slack: 11 verktyg
  • Sentry: 5 verktyg
  • Grafana: 5 verktyg
  • Splunk: 2 verktyg

En analys visade att uppsättningar med 7+ servrar förbrukade 67 000+ token, vilket är en tredjedel av ditt 200K‑kontextfönster borta innan konversationen ens börjar.

Skills tar en annan väg genom progressiv exponering. Vid sessionsstart ser Claude bara varje skills namn och en enradig beskrivning från YAML‑frontmatter, omkring 100 token per skill. 

De fullständiga instruktionerna laddas bara när Claude avgör att skillen är relevant för den aktuella uppgiften. Referensfiler laddas bara när de specifikt behövs. Och skript kommer aldrig in i kontextfönstret; Claude kör dem externt och endast utdata kommer tillbaka.

Title: Diagram comparing Claude Code skills progressive loading versus MCP servers preloading all tool definitions into context window - Description: Diagram comparing Claude Code skills progressive loading versus MCP servers preloading all tool definitions into context window

Anthropic adresserade denna obalans i slutet av 2025 med Tool Search, en funktion som ger lazy loading till MCP‑servrar. 

I stället för att förladda varje verktygsdefinition detekterar Claude Code nu när verktygsbeskrivningar skulle förbruka mer än 10% av tillgängligt kontext och växlar till laddning vid behov. 

Interna tester visade att kontextanvändningen sjönk från ~134 000 token till ~5 000 token för stora verktygsbibliotek. Noggrannheten i verktygsval förbättrades också, med Opus 4 från 49% till 74% och Opus 4.5 från 79,5% till 88,1% i MCP‑utvärderingar.

Så här avgör du mellan dem.

Skills passar bäst när du vill att Claude ska ha tillgång till kunskap eller arbetsflöden som den kan tillämpa med omdöme. En skill som beskriver ditt teams checklista för kodgranskning laddas när Claude granskar kod, men Claude avgör fortfarande hur varje punkt ska tillämpas utifrån kontext. 

Skills är också vettiga för operationer som behöver skript för tung beräkning, eftersom skriptkoden stannar utanför kontextfönstret.

MCP‑servrar passar bäst när Claude behöver realtidsdata från externa tjänster som Slack‑meddelanden, GitHub‑PR:er eller databasfrågor. De är också rätt val när flera AI‑agenter behöver samma verktyg eller när du behöver företagsfunktioner som granskningsloggar och explicita behörigheter.

Många uppsättningar kombinerar båda: skills ger ”hur” och ”när” via instruktioner i naturligt språk, medan MCP‑servrar hanterar de faktiska API‑anropen.

  Skills MCP‑servrar Hooks
Utlösning /skill-name eller automatiskt Tillgängliga som verktyg i sessionen Automatiskt vid livscykelhändelser
Tokenskostnad ~100 per skill (lazy load) 100–300 per verktyg (förladdning; minskas av Tool Search) Noll
Avgör Claude? Ja Ja Nej (deterministiskt)
Bäst för Kunskap, arbetsflöden, teamstandarder Externa API:er, realtidsdata, multi‑agent‑upplägg Lintning, testgrindar, skyddade sökvägar
Exempel Checklista för kodgranskning Hantering av GitHub‑PR Blockera commits tills tester passerar

Populära Claude Code‑skills värda att installera

  • Superpowers (vår genomgång): 20+ produktionstestade arbetsflöden för TDD, felsökning och strukturerad planering
  • frontend-design: Instruerar Claude att undvika generiska uttryck och fatta djärva designbeslut
  • mcp-builder: Guide för att skapa MCP‑servrar för att integrera externa API:er
  •  webapp-testing: Testa lokala webbapplikationer med Playwright för UI‑verifiering
  •  skill-creator: Interaktivt verktyg som guidar dig genom att bygga nya skills

Populära MCP‑servrar värda att koppla in

  • Context7: Uppslag av dokumentation i realtid och versionsspecifikt
  • GitHub: Reposökning, PR‑hantering, ärendehantering
  • Playwright: Browserautomatisering med tillgänglighetsträd i stället för skärmdumpar
  • Supabase: Databasfrågor med hänsyn till Row Level Security
  • Sentry: Felspårning och prestandaövervakning direkt i editorn

Du kan också läsa vår guide till de bästa fjärr‑MCP‑servrarna.

Hooks: det deterministiska lagret

Hooks står helt utanför debatten skills kontra MCP. Medan både skills och MCP‑servrar är Claude‑vända (Claude avgör när de används) är hooks systemvända. De avfyras vid händelser som PreToolUse eller PostToolUse och kör shell‑skript före eller efter att Claude vidtar specifika åtgärder. Claude har inget att säga till om huruvida en hook körs.

Detta gör Hooks till rätt val när något måste ske utan undantag: lintning före varje commit, blockera skrivningar till skyddade kataloger, logga varje bash‑kommando eller köra tester före varje deploy.

Den här utvecklaren rekommenderar ”block-at-submit”‑hooks framför ”block-at-write”‑hooks. Att blockera Claude mitt i en uppgift förvirrar agenten och ger sämre resultat. Hennes team använder en PreToolUse‑hook som omsluter Bash(git commit) och kontrollerar en temporärfil som bara finns om testerna passerar. Ingen fil, ingen commit. Agenten avslutar sitt arbete, sedan sker valideringen i slutet.

Hooks ger ingen tokensedan de körs som shell‑skript utanför kontextfönstret.

Användbara Claude‑hooks att sätta upp

  • ESLint/Prettier vid redigering: Autoformatera filer efter att Claude skrivit dem
  • Testgrind vid commit: Blockera commits om inte testerna passerar
  • Skyddade sökvägar: Förhindra skrivning till migrations‑, konfig‑ eller vendor‑kataloger
  • Notifiering vid slutförande: Skicka Slack‑ eller skrivbordsaviseringar när långa uppgifter blir klara
  • Säkerhetskopia av transkript: Spara konversationshistorik före komprimering

Så bygger du dina egna Claude Code‑plugin

När en skill ligger i din personliga .claude/‑katalog kan bara du använda den. Att paketera den som ett plugin låter dig dela den med kollegor eller återanvända den i olika projekt.

Vi bygger ett plugin som heter session-logger som lägger till kommandot /session-logger:summarize. När det anropas granskar Claude konversationen och lägger till en strukturerad sammanfattning i SESSION_LOG.md.

Skapa pluginstrukturen

Plugin kan ligga var som helst på ditt filsystem. För den här guiden skapar vi ett i din hemkatalog:

cd ~
mkdir -p session-logger/.claude-plugin
mkdir -p session-logger/skills/summarize

Detta skapar:

~/session-logger/
├── .claude-plugin/
│   └── plugin.json  	# manifest goes here, nowhere else
└── skills/
	└── summarize/   	# folder name becomes the command name
    	└── SKILL.md 	# must be named exactly this

Skriv manifestet

Skapa ~/session-logger/.claude-plugin/plugin.json:

{
  "name": "session-logger",
  "description": "Log session summaries to a markdown file",
  "version": "1.0.0"
}

Fältet name blir namnrymdsprefix. Alla kommandon i detta plugin börjar med /session-logger:.

Skriv skillen

Skapa ~/session-logger/skills/summarize/SKILL.md:

---
description: Log a summary of the current session to SESSION_LOG.md
disable-model-invocation: true
---
 
When invoked, review the conversation and create a summary with these sections:
 
- **Date/time**: Current timestamp
- **Tasks completed**: What was accomplished
- **Files modified**: List of files created or changed
- **Decisions made**: Architectural or implementation choices
- **Open questions**: Unresolved items for future sessions
 
Append the summary to SESSION_LOG.md in the project root. Create the file if it doesn't exist.

Raden disable-model-invocation: true talar om för Claude att endast du kan trigga denna skill. Utan denna flagga kan Claude besluta att köra kommandot själv om den tror att det hjälper konversationen. För en logger eller ett deployverktyg vill du oftast ha manuell kontroll.

Testa lokalt

Navigera till ett projekt där du vill använda pluginet, starta sedan Claude Code med flaggan --plugin-dir som pekar på ditt plugin:

cd ~/your-project
claude --plugin-dir ~/session-logger

Skriv /session-logger:summarize för att anropa kommandot. Observera att plugin‑kommandon inte visas i autokomplettering förrän du skriver hela namnet. Texten blir blå när Claude Code känner igen det som ett giltigt kommando.

Efter att ha gjort lite arbete i sessionen, kör kommandot. Claude granskar konversationen och lägger till en post i SESSION_LOG.md i din aktuella projektkatalog.

Dela med andra

Pusha ditt plugin till GitHub. För att distribuera det bortom manuell kloning, lägg till det i en plugin‑marknadsplats. Guiden för marknadsplatser täcker hur du skapar en egen marknadsplats eller skickar in till befintliga.

Avslutande tankar

Plugin förvandlar Claude Code från en generell assistent till något format efter just ditt arbetsflöde. Sessionsloggaren vi byggde tog ungefär fem minuter och tre filer. De flesta användbara plugin är inte mycket mer komplicerade än så.

Om du följde med har du nu ett fungerande plugin på din maskin. Testa att justera det: ändra sammanfattningsformatet, lägg till nya avsnitt eller byt ut det mot något som ditt team faktiskt behöver. Strukturen är densamma oavsett om du bygger ett snabbt personligt verktyg eller något du distribuerar till hundratals utvecklare.

Bläddra dessutom i community‑repos när du får tillfälle. Att se hur andra strukturerar sina plugin lär dig mönster som dokumentationen inte kan.

För att fördjupa dig i Claude Code, kolla in våra genomgångar om bästa praxis för Claude Code, ramverket Superpowers‑skills, snedstreckskommandon för längre sessioner och säkerhet och behörigheter. Vill du lära dig mer om Claude‑modeller rekommenderar jag kursen Introduktion till Claude‑modeller.

Claude Code‑plugin: Vanliga frågor

Vad är plugin i Claude Code?

Plugin är delningsbara paket som buntar Claude Code‑förlängningar. De kan innehålla skills (anpassade kommandon och kontextmedvetna promptar), MCP‑servrar (anslutningar till externa API:er) och hooks (shell‑skript som körs vid specifika händelser). Plugin låter dig dela arbetsflöden med kollegor eller återanvända dem i olika projekt.

Hur installerar jag ett Claude Code‑plugin?

Använd kommandot claude plugin add <plugin-name> för marknadsplats‑plugin. För lokal utveckling, starta Claude Code med claude --plugin-dir ./your-plugin för att testa utan installation.

Vilken är korrekt filstruktur för ett Claude Code‑plugin?

Plugin behöver en .claude-plugin/‑katalog som innehåller plugin.json i roten. Skills läggs i skills/<skill-name>/SKILL.md. Manifestet ska endast ligga i .claude-plugin/, medan alla andra kataloger (skills, hooks, agenter) ligger i pluginets rot.

Varför visas inte mitt anpassade snedstreckskommando i autokomplettering?

 Plugin‑kommandon visas inte i autokomplettering förrän du skriver hela namnet. Texten blir blå när Claude Code känner igen det. Säkerställ också att din SKILL.md innehåller disable-model-invocation: true i frontmatter för att göra den användarutlösbar.

När ska jag använda Claude‑hooks i stället för skills?

Använd hooks när något måste ske varje gång utan undantag, som lintning vid varje redigering eller att blockera commits tills tester passerar. Hooks är deterministiska och systemvända, medan skills är kontextmedvetna och Claude avgör när de ska tillämpas.

Vad är skillnaden mellan Claude Code‑skills och MCP‑servrar?

Skills är instruktionsfiler i naturligt språk som Claude laddar vid behov och som förbrukar ~100 token vardera vid sessionsstart. De passar bäst för kunskap, arbetsflöden och teamstandarder. MCP‑servrar kopplar Claude till externa API:er och förladdar verktygsdefinitioner (100–300 token per verktyg), även om Anthropics Tool Search‑funktion nu minskar denna overhead. Använd skills när Claude behöver tillämpa omdöme; använd MCP‑servrar när Claude behöver realtidsdata utifrån.

Hur bygger jag ett Claude Code‑plugin från grunden?

Skapa en katalog med en .claude-plugin/plugin.json‑manifestfil som innehåller plugin‑namn, beskrivning och version. Lägg till en skills/<skill-name>/SKILL.md‑fil med YAML‑frontmatter och instruktioner. Testa lokalt med claude --plugin-dir ./your-plugin, pusha sedan till GitHub och installera med claude plugin add github:username/repo-name.

Ämnen

Lär dig använda Claude Code med DataCamp!

course

Software Development with Claude Code

4 timmar
5.6K
Claude Code brings AI assistance to your terminal. Learn the workflows that turn it into a reliable tool for real software development.
Se detaljerRight Arrow
Starta Kursen
Se merRight Arrow