
Claude skill triggar inte? Fixa det med 6 kontroller
Du installerade en skill, du bad Claude göra det skillen är till för, och Claude fortsatte som om skillen inte existerar. Inget felmeddelande, ingen varning, inget att greppa efter. Bara tystnad.
Vi ser det här konstant. SkillProof installerar och testar varje skill i vår katalog på en ren maskin, och utebliven triggning är den enskilt vanligaste defekten vi hittar. Den är också den mest fixbara: nästan varje "skillen fungerar inte"-rapport i våra testloggar spårar tillbaka till en av sex orsaker, och fem av dem tar under en minut att utesluta.
Kör checklistan först. Resten av artikeln utvecklar varje kontroll med symptomet, orsaken och fixen.
30-sekunderschecklistan
- Rätt mapp? Filen måste ligga på
~/.claude/skills/<skill-name>/SKILL.md, en mapp per skill, filnamnet exaktSKILL.md. - Omstartat? Claude skannar skills vid sessionsstart. Ändringar gjorda mitt i en session är osynliga tills du startar om.
- Namnkollision? Två skills med samma
nameskuggar varandra. Bara en överlever. - För vag beskrivning? Om beskrivningen inte nämner vad användare bokstavligen frågar efter matchar Claude den aldrig. Det här är orsak nummer ett.
- Giltig frontmatter? Ett enda trasigt YAML-tecken gör hela skillen osynlig, tyst.
- Konkurrerande skill? En annan installerad skill med överlappande beskrivning kan vinna matchningen.
Om alla sex passerar och skillen aktiveras men outputen inte förändras är det ett annat fel. Hoppa till när den triggar men inget händer.
Kontroll 1: skillen ligger i fel mapp
Symptom. Skillen dyker aldrig upp när du frågar Claude "vilka skills har du installerade?". Det är som om du aldrig kopierade den.
Orsak. Claude tittar bara på specifika platser: ~/.claude/skills/ för personliga skills och .claude/skills/ inuti ett projekt för projekt-skills. Inom dessa är layouten strikt: en mapp per skill, med en fil som heter exakt SKILL.md. Misstagen vi ser oftast när vi installerar community-skills för testning: att kopiera hela det klonade repot (så att sökvägen blir skills/some-repo/skills/pdf-helper/SKILL.md, en nivå för djupt), att släppa SKILL.md direkt i ~/.claude/skills/ utan egen mapp, och gemener i skill.md, vilket vissa filsystem förlåter och andra inte.
Fix. Verifiera från terminalen:
ls ~/.claude/skills/*/SKILL.md
Varje skill du förväntar dig ska skriva ut exakt en rad. Om en skill saknas eller dess sökväg har extra nästling, flytta mappen så att SKILL.md ligger en nivå under skills/. Vår installationsguide går igenom den korrekta layouten för varje plattform.
Kontroll 2: du startade inte om
Symptom. Mappstrukturen är korrekt, du fixade den för två minuter sedan, och Claude kan fortfarande inte se skillen i samma konversation.
Orsak. Skill-upptäckt sker en gång, vid start. Claude läser frontmattern i varje SKILL.md den kan hitta och håller det indexet under sessionen. En skill du lägger till, döper om eller redigerar mitt i en session existerar inte så vitt den pågående sessionen vet.
Fix. I Claude Code: avsluta och starta en ny session. I desktop-appen: avsluta helt med Cmd+Q på macOS (att stänga fönstret räknas inte) och öppna igen. Den här är så billig att utesluta att vi gör det före all djupare felsökning, på samma sätt som du strömcyklar en router innan du ringer din internetleverantör.
Kontroll 3: en namnkollision skuggar din skill
Symptom. Du installerade skillen, mappen är rätt, du startade om, och skill-listan visar antingen inget nytt eller en annan skill som svarar på samma namn.
Orsak. Skill-namn måste vara unika. Om en personlig skill och en projekt-skill delar name, eller två installerade paket båda skeppar en skill som heter seo-audit, skuggar den ena den andra utan varning. Vi träffade på detta i vårt eget katalogarbete: två marknadsföringspaket installerade sida vid sida gav en tyst dubblett, och den vi ville ha laddades aldrig.
Fix. Sök efter dubbletter:
grep -h "^name:" ~/.claude/skills/*/SKILL.md .claude/skills/*/SKILL.md 2>/dev/null | sort | uniq -d
All output betyder en kollision. Döp om mappen och name-fältet i kopian du kontrollerar, starta om och kolla listan igen.
Kontroll 4: beskrivningen säger aldrig när den ska trigga
Symptom. Skillen syns i listan över installerade. Be om den vid namn och den fungerar fint. Be om uppgiften med dina egna ord och inget händer.
Orsak. Det här är den stora, och den förtjänar sin egen sektion, så här är kortversionen: Claude avgör om en skill ska laddas genom att bara läsa dess description-fält och jämföra det mot din förfrågan. Om beskrivningen säger vad skillen är i stället för när den ska användas sker matchningen aldrig. Skillen är inte trasig. Den är oannonserad.
Fix. Skriv om beskrivningen kring fraserna användare faktiskt skriver. Djupdykningen nedan visar tre verkliga felmönster och deras omskrivningar.
Kontroll 5: frontmattern är ogiltig
Symptom. Mapp korrekt, omstart gjord, ingen namnkollision, och skillen dyker fortfarande inte upp i listan alls. Det här ser ut som kontroll 1 men sökvägen är fin.
Orsak. YAML-blocket överst i SKILL.md gick inte att parsa, och en skill med oparsebar frontmatter hoppas helt enkelt över. De vanliga bovarna från våra testanteckningar: ett saknat avslutande ---, ett ociterat kolon inuti beskrivningen ("Use for: reports" knäcker parsern), typografiska citattecken inklistrade från ett blogginlägg eller ett Google-dokument, tabbtecken använda för indentering, och ett name som bryter mot formatreglerna (endast gemener, siffror och bindestreck, max 64 tecken; beskrivningar har tak på 1024).
Fix. Öppna filen och granska blocket med blotta ögat, eller hoppa över granskandet: klistra in det i vår skill-validator så flaggar den parsningsfel, formatöverträdelser och kontaminering av typografiska citattecken omedelbart. Om frontmattern parsas och skillen fortfarande gömmer sig, gå tillbaka till kontroll 1, för då är det nästan alltid sökvägen.
Kontroll 6: en annan skill vinner matchningen
Symptom. Du ber om uppgiften och en skill aktiveras faktiskt, bara inte din. Eller beteendet ändras på ett sätt som matchar en annan skills instruktioner.
Orsak. När flera beskrivningar rimligen täcker en förfrågan väljer Claude den som läser som bästa träff, och en bredare, mer självsäker beskrivning tenderar att slå en smalare. Installera en generell "writing assistant"-skill bredvid din "release notes formatter" och generalisten kan svälja varje skrivförfrågan, inklusive release notes.
Fix. Vässa båda beskrivningarna så att deras territorier inte överlappar, och lägg till explicita uteslutningar. En rad som "Do NOT use for release notes or changelogs" i generalistens beskrivning är grov och fungerar. Om du inte kontrollerar den felande skillen, inaktivera den medan du testar din, och avgör sedan om du faktiskt behöver båda.
Varför beskrivningar fallerar: djupdykningen
Vi testar varje skill vi listar, och triggerproblem är skälet nummer ett till att skills får låga betyg i våra recensioner. Inte trasiga skript, inte dåliga instruktioner. Beskrivningar som aldrig matchas.
Mekaniken förklarar varför. Vid start laddar Claude bara varje skills name och description, ungefär hundra tokens. Kroppen, hur briljant den än är, stannar på disken tills beskrivningen vinner en matchning mot din förfrågan. Beskrivningen är en säljpitch levererad till en modell, och de flesta författare skriver den som en museietikett i stället.
Här är de tre mönster vi drar ned betyget för oftast, med omskrivningar som fixade dem i våra omtester.
Mönster 1: den blygsamma etiketten.
description: Helps with documents.
Inget här kopplar till något en användare skulle skriva. Jämför med Anthropics DOCX-skill, som klarade våra triggertester på första körningen. Dess beskrivning namnger filformatet, handlingarna och formuleringarna som ska aktivera den. Omskrivningen som följer samma logik:
description: Create, edit, and format Word documents (.docx).
Use when the user mentions a Word doc, .docx file, memo,
letter, or asks for a deliverable "as a document."
Mönster 2: det interna namnet.
description: Runs the acme-formatter pipeline with corporate config.
Det här beskriver implementationen. Ingen användare ber Claude "köra acme-formatter-pipelinen"; de ber om att "städa upp den här rapporten innan jag skickar den till en kund". Omskrivningen översätter skillen till användarens vokabulär:
description: Reformat rough drafts into client-ready reports using
Acme's corporate style. Use when the user wants to clean up,
polish, or "make presentable" a document for external sharing.
Mönster 3: den glupska filten.
description: Use for any writing task.
Det motsatta felet. Den här matchar allt, vilket betyder att den kolliderar med varje annan skrivnära skill och triggar när den inte borde, och användare inaktiverar den inom en vecka. Omskrivningen smalnar av anspråket och stängslar in kanterna:
description: Write and edit marketing copy: landing pages, ads,
and email campaigns. Do NOT use for technical docs, code
comments, or internal memos.
Testet vi tillämpar vid granskning: läs bara beskrivningen och fråga, "om en användare skrev sin förfrågan naturligt, skulle de här orden matcha den?" Skriv i tredje person, ange vad skillen gör och när den gäller, och inkludera de faktiska substantiv folk använder. Om du skriver en skill från grunden täcker vår författarguide detta mer på djupet, och Anthropics Skill Creator scaffoldar beskrivningar som klarar det här testet som standard.
GRATIS STARTPAKET
Trött på att felsöka andras beskrivningsfält? Vårt gratis startpaket är fem skills som fick högst betyg på triggerpålitlighet i våra tester. De triggar när de ska, direkt ur lådan.
Hämta gratis startpaketSå testar du triggning ordentligt
De flesta testar en skill genom att namnge den: "använd invoice-skillen på det här." Det bevisar ingenting, för att namnge en skill kringgår beskrivningsmatchningen helt. Det är som att testa en brandvarnare genom att trycka på testknappen och dra slutsatsen att ditt hus är brandsäkert.
Testa så som en användare skulle fråga, i en färsk session varje gång. För en fakturaextraktionsskill, tre formuleringar som borde trigga:
- "Plocka ut totalsummorna ur de här faktura-PDF:erna."
- "Jag har 30 fakturor från leverantörer, få in beloppen och datumen i en tabell."
- "Extrahera radposterna ur den här räkningen."
Och två som inte borde:
- "Sammanfatta den här PDF:en åt mig." (Generiskt PDF-arbete; en annan skills territorium.)
- "Skriv ett fakturamejl till den här kunden." (Författande, inte extraktion.)
Om en borde-trigga-formulering inte gör något, fråga Claude direkt: "Vilken av dina installerade skills skulle du använda för den här förfrågan, och varför?" Svaret visar dig matchningsresonemanget, och det pekar oftast rakt på den svaga punkten i beskrivningen. Om borde-inte-trigga-formuleringarna aktiverar skillen ändå har du en glupsk filt och behöver uteslutningar. Det här är exakt protokollet vi kör i katalogtestningen, och det är samma disciplin som skillen Systematic Debugging lär ut: reproducera först, en variabel i taget, tro på bevisen.
När den triggar men inget händer
Anta att skillen faktiskt aktiveras. Du kan bekräfta det genom att mitt i konversationen fråga Claude om en skill laddades för förfrågan, och den berättar. Men outputen ser likadan ut som innan du installerade något.
Det är inte ett triggerproblem, och inget ovan kommer att fixa det. Det är ett kroppsproblem: instruktionerna inuti skillen är för vaga för att ändra beteendet, eller skillen refererar medföljande filer som inte finns på sökvägarna den förväntar sig, eller den anropar ett skript vars beroenden aldrig deklarerades. Beskrivningen fick in skillen genom dörren och innehållet ramlade omkull därinne.
I vår testning är det här den andra stora högen av fel, ungefär spegelbilden av triggerdefekter, och det är huvudskälet till att ungefär hälften av community-skills fallerar våra tester. Den snabba diskriminatorn: om beteendet inte ändrades alls, misstänk triggningen; om beteendet ändrades men dåligt eller delvis, misstänk kroppen. Felsök därefter, för fixarna överlappar inte.
Plattformsfällor
Skill-formatet är identiskt överallt, men upptäckten är det inte, och en skill som fungerar på ett ställe kan se död ut på ett annat.
Claude Code läser mappar på disk: ~/.claude/skills/ för personliga, .claude/skills/ per projekt. Båda laddas; namnkollisioner mellan de två nivåerna löses till en vinnare (kontroll 3). Starta om sessionen efter varje ändring.
Claude Desktop läser inte dina skills-mappar. Skills laddas upp som en zip via Settings, under Capabilities, och zipen måste innehålla skillens mapp på toppnivån, inte den nakna SKILL.md och inte en omslutande katalog. En skill som triggar fint i Claude Code kommer helt enkelt vara frånvarande på Desktop tills du laddar upp den där separat.
claude.ai tar samma uppladdningsväg som Desktop, med två extra sätt att förlora: skills kräver att kodexekveringsfunktionen är aktiverad på din plan, och workspace-administratörer kan inaktivera skills för hela organisationen, i vilket fall inget du laddar upp någonsin kommer att trigga och inget felmeddelande säger det. Fråga din admin innan du lägger en kväll på att skriva om beskrivningar.
Ännu en plattformsövergripande fälla: en skill-kropp skriven för Claude Code som anropar git eller läser lokala projektfiler kommer att trigga korrekt på claude.ai och sedan fallera inuti sandlådan. Det är ett kroppsproblem utklätt till plattformsproblem.
När du ska sluta felsöka
Om det är din egen skill, fortsätt, för varje fix ovan är permanent och validatorn plus fem-formulerings-testet tar dig dit. Om det är en tredjepartsskill och du bränt mer än tjugo minuter på någon annans beskrivningsfält är det rimligt att byta den mot en som redan gått genom den här checklistan: varje skill på våra bäst-listor klarade triggertestning på en ren maskin innan vi listade den.
GRATIS VERKTYG
Klistra in din SKILL.md i vår validator så fångar den trasig frontmatter, formatöverträdelser och de vaga beskrivningsmönstren från den här artikeln på ungefär 2 sekunder.
Kontrollera din SKILL.md gratisVanliga frågor
Hur bekräftar jag att en skill över huvud taget är installerad?
Fråga Claude "vilka skills har du installerade?" i en färsk session. Om din skill inte finns i svaret är problemet upptäckten (kontroll 1, 3 och 5: mapp, kollision, frontmatter), inte triggningen. Om den listas men aldrig aktiveras är problemet beskrivningen (kontroll 4 och 6).
Kan jag inte bara tvinga skillen att trigga genom att namnge den?
Jo. "Använd docx-skillen för att skriva det här PM:et" laddar skillen direkt, och det är en helt okej workaround medan du felsöker. Det är dock ingen fix: en skill du måste åkalla vid namn varje gång är en skill med trasig beskrivning, och du kommer att glömma att åkalla den precis när det gäller.
Varför fungerar min skill i Claude Code men inte på Desktop eller claude.ai?
Olika upptäcktsvägar. Claude Code läser mappar på disk; Desktop och claude.ai ser bara skills uppladdade via Settings som en zip med skill-mappen på toppnivån. På claude.ai, bekräfta också att kodexekvering är aktiverad och att din workspace-admin inte har inaktiverat skills helt.
Förstör det triggningen att installera för många skills?
Inte direkt. Femtio skills kostar några tusen tokens metadata, vilket är billigt. Den verkliga risken är överlapp: ju fler beskrivningar du installerar, desto troligare att två av dem gör anspråk på samma territorium, och då vinner ibland fel skill (kontroll 6). Installera efter behov, och rensa skills som aldrig triggar.
Min skill triggade igår men inte idag. Är det normalt?
Ibland, ja. Matchningen är modelldriven, inte en regex, så en beskrivning på gränsen triggar på en formulering och missar en nästan identisk. Om en skill är nyckfull snarare än död, behandla den som en svag beskrivning: lägg till de exakta fraserna som missade i beskrivningsfältet, starta om och testa igen. Pålitliga skills triggar på varje rimlig formulering, vilket är varför vi testar med fem, inte en.
★ 9.6/10 × 3
Gratis startpaket
De 3 skills som fått våra högsta testbetyg plus installationschecklistan — setupen vi själva skulle lägga på en ny maskin. Gratis, via e-post.