Claude Code Hooks: Heildarhandbók (2026)

Author Avatar
Andrew
AI Perks Team
5,637
Claude Code Hooks: Heildarhandbók (2026)

Stutt yfirlit: Claude Code hooks eru sjálfvirkni handrit sem keyra á ákveðnum lífsferilsstigum á meðan á kóðunarvinnu með gervigreind stendur, sem gerir forriturum kleift að keyra sérsniðnar skipanir, sannreyna aðgerðir, forsníða kóða, senda tilkynningar og framfylgja reglum verkefnis. Þessir hooks samþættast vinnuflæði Claude í gegnum atburði eins og SessionStart, PreToolUse og PostToolUse, styðja við skipanir, HTTP og boðskipti byggð á keyrslukerfum með stillanlegum fresti og hegðun útgöngukóða.

Hook kerfi Claude Code breytir gervigreindar kóðunaraðstoðarmanni frá gagnlegu tól yfir í fullkomlega sjálfvirkt þróunarumhverfi. Flestir forritarar átta sig ekki á því hversu mikla stjórn er í boði í gegnum hooks.

Þetta er þó málið – hooks snúast ekki bara um að keyra handrit eftir breytingar á skrám. Þau veita afskiptapunktum í gegnum alla ákvarðanatökuferli Claude. Áður en það framkvæmir skipun. Eftir að tólakall mistekst. Þegar það þarf leyfi. Jafnvel áður en þú vinnur úr boðskiptum notenda.

Þessi leiðarvísir nær yfir allt sem opinbera skjalasafnið býður upp á, auk hagnýtra mynstur sem samræður samfélagsins leiða í ljós að virka í framleiðsluumhverfi.

Hvað Claude Code Hooks Gerir Raunverulega

Samkvæmt opinberu Claude Code skjalasafni eru hooks notandaskilgreindar kerfisskipunir, HTTP endapunktar eða boðskiptainnspýtingar sem keyra á tilteknum stöðum í lífsferli Claude Code. Þau taka við skipulögðu JSON-inntaki í gegnum stdin og stjórna vinnuflæði í gegnum útgöngukóða eða HTTP-svör.

Sjálfvirknin fer dýpra en flestar leiðarvísir benda til. Hooks geta algjörlega lokað á framkvæmd tækja, innspýtt viðbótarupplýsingum í röksemdafærslu Claude, kallað á ytri þjónustur og framfylgt sannprófunarreglum sem Claude verður að virða.

Þrjár kjarnategundir hooks eru til:

  • Skipana hooks: Kerfisskrifar sem samskipta í gegnum stdout, stderr og útgöngukóða
  • HTTP hooks: Fjarlægir endapunktar sem taka við POST beiðnum og skila JSON svörum
  • Boðskipta hooks: Stýrðar leiðbeiningar sem innspýtt er í samhengi Claude á tilteknum atburðum

Hver tegund þjónar mismunandi sjálfvirknimynstrum. Skipana hooks sjá um staðbundna sannprófun og forsnið. HTTP hooks samþættast ytri þjónustum og gagnasöfnum. Boðskipta hooks breyta hegðun Claude án ytri ferla.

Hook lífsferill og atburðakerfi

Opinbera skjalasafnið skilgreinir marga hook-atburði (SessionStart, UserPromptSubmit, PreToolUse, PermissionRequest, PostToolUse, PostToolUseFailure, Notification og aðra) sem kallað er á meðan á keyrslu Claude Code stendur. Skilningur á því hvenær hver kallaður er ákvarðar hvaða sjálfvirknir verða mögulegar.

Claude Code hook atburðir og keyrsluferli þeirra í venjulegri lotu
AtburðurHvenær kallað er áGetur lokað 
SessionStartÞegar lota hefst eða heldur áframNei
UserPromptSubmitÞegar þú sendir inn boðskipti, áður en Claude vinnur það
PreToolUseÁður en tólakall er framkvæmt
PermissionRequestÞegar leyfisgluggi birtist
PostToolUseEftir að tólakall tekstNei
PostToolUseFailureEftir að tólakall mistekstNei
NotificationÞegar Claude Code sendir tilkynninguNei
SubmitMessageÞegar Claude sendir skilaboð til notandaNei
ContextCompactionÞegar samhengisgluggi nálgast mörkNei

Lokanlegur möguleiki skiptir mestu máli. PreToolUse hooks geta komið í veg fyrir hættulegar aðgerðir áður en þær eru framkvæmdar. Útgöngukóði 1 lokar aðgerðinni. Útgöngukóði 0 leyfir henni. Útgöngukóði 2 biður Claude um að íhuga aftur.

En bíddu. PostToolUse hooks geta ekki afturkallað aðgerðir þar sem tól hefur þegar verið framkvæmt. Þessi takmörkun mótar hvernig sannprófunarrökfræði er skipulögð. Mikilvægar athuganir eiga heima í PreToolUse. Hreinsun og forsnið eiga heima í PostToolUse.

Skoðaðu AI tól verðlaun á meðan þú stillir Claude Code

Ef þú vinnur með Claude Code hooks, gætirðu líka verið að velja önnur gervigreindarverkfæri í kringum vinnuflæðið þitt. Get AI Perks safnar saman upphafsfés og afslætti af hugbúnaði fyrir gervigreindar- og skýjatól á einum stað. Vettvangurinn inniheldur meira en 200 tilboð, með skilyrðum fyrir verðlaun og leiðbeiningum um að krefjast hvers og eins.

Ertu að leita að Claude eða öðrum gervigreindar verðlaun?

Athugaðu Get AI Perks til að:

  • skoða tilboð á Claude og öðrum gervigreindarverkfærum
  • bera saman skilyrði fyrir verðlaun áður en þú sækir um
  • finna upphafsafslætti á þínum tólastakka

👉 Farðu á Get AI Perks til að kanna núverandi verðlaun fyrir gervigreindar hugbúnað.

Stillingar og skráarskipulag

Hooks eru skilgreindir í .claude/settings.json skránni innan verkefnis. Stillingarsniðið styður almenna hooks og samsvarandi verkfærasértæk mótíf sem sía þegar hooks keyra.

Grunn skipanar hook uppbygging:

{
  “hooks”: [
    {
      “event”: “PostToolUse”,
      “command”: “prettier –write”,
      “args”: [“${file}”]
    }
  ]
}

Mótíf ${file} stækkar til að vera nákvæm skráarleið frá tólainntaki. Samkvæmt opinberu skjalasafni styðja hooks slíka mótífstækkanir í skipana- og arg-sviðum.

Staðsetningarstigveldi hooks

Claude Code athugar margar staðsetningar fyrir hook skilgreiningar, með skýru forgangsröð:

  1. Verkefnastig: .claude/settings.json í núverandi vinnusvæði
  2. Notandastig: ~/.claude/settings.json fyrir allar lotur
  3. Búnaður-veitt: Hooks sem fylgja með uppsettum búnaði

Verkefna hooks taka við notendahookum fyrir sama atburð. Þetta gerir kleift að hafa verkefnis sérstakar forsniðsreglur á meðan almennar tilkynningastjórnendur eru viðhaldið.

Mótíf mótíf fyrir sértæka keyrslu

Mótífkerfið síar hooks í ákveðin verkfæri eða skilyrði. Án mótífa keyra hooks í hvert skipti sem atburður þeirra kemur upp.

{
  “hooks”: [
    {
      “event”: “PreToolUse”,
      “matcher”: {
        “toolName”: “edit_file”,
        “pathPattern”: “src/**/*.ts”
      },
      “command”: “./scripts/validate-typescript.sh”
    }
  ]
}

Sviðmyndin pathPattern tekur við glob setningafræði. Sviðmyndin toolName samsvarar við innbyggð verkfæri Claude eins og edit_file, execute_command, read_file og create_directory.

Samræður samfélagsins leiða í ljós að mótífasamsetningar virka með AND rökin. Öll tilgreind mótíf verða að passa fyrir hook til að keyra.

Skipana Hooks: Samþætting kerfisskrifta

Skipana hooks keyra kerfisskipunir eða handrit með skipulagðu JSON-inntaki. Þau eru algengasta hook-gerðin fyrir staðbundna sjálfvirkni.

Opinbera skjalasafnið skilgreinir að skipana hooks taka við JSON í gegnum stdin með þessari uppbyggingu:

{
  “event”: “PreToolUse”,
  “toolName”: “edit_file”,
  “toolInput”: {
    “path”: “src/app.ts”,
    “content”: “…”
  },
  “sessionId”: “abc123”,
  “turnId”: “turn-456”
}Scripts parse þetta inntak til að taka ákvarðanir. Python sannprófunar hook gæti litið svona út:#!/usr/bin/env python3
import sys
import json

input_data = json.load(sys.stdin)
tool_input = input_data.get(‘toolInput’, {})
file_path = tool_input.get(‘path’, ”)

if file_path.startswith(‘protected/’):
    print(“Cannot edit protected files”, file=sys.stderr)
    sys.exit(1)

sys.exit(0)

Útgöngukóði 0 leyfir aðgerðina. Útgöngukóði 1 lokar henni og sýnir stderr skilaboðin til Claude. Útgöngukóði 2 kveikir sérstaka hegðun eftir atburði.

Útgöngukóði 2 hegðun

Samkvæmt opinbera hooks tilvísunarskjalsafninu hefur útgöngukóði 2 merkingu sem er sértæk fyrir atburð (PreToolUse: lokar og biður um endurhugsun; UserPromptSubmit: veitir samhengi án þess að loka; PermissionRequest: lokar leyfi):

  • PreToolUse: Lokar tólinu og biður Claude um að íhuga aftur með stderr skilaboðunum sem samhengi
  • UserPromptSubmit: Veitir stderr úttak sem viðbótar samhengi án þess að loka
  • PermissionRequest: Lokar leyfisgjöfinni

Þetta skapar miðjumann milli harðrar lokunar og leyfisveitingar. Claude fær endurgjöf um hvers vegna aðgerðin gæti verið vandamálaleg og getur lagað nálgun sína.

Ósamstilltar skipana hooks

Async: true flaggan keyrir hooks í bakgrunni án þess að loka vinnuflæði Claude. Þetta skiptir máli fyrir hægar aðgerðir eins og dreifingartilkynningar eða söfnun mælinga.

{
  “event”: “PostToolUse”,
  “matcher”: {
    “toolName”: “execute_command”
  },
  “command”: “./scripts/log-to-analytics.sh”,
  “async”: true,
  “timeout”: 30
}

Þegar async hook kallað er á, ræsir Claude Code ferlið og heldur áfram strax. Timeout sviðið setur hámarks keyrslutíma í sekúndum. Ef það er ekki tilgreint, nota async hooks sjálfgefna 10 mínútna fresti.

Raunverulegt tal: async hooks geta ekki lokað aðgerðir þar sem þær keyra eftir að Claude heldur áfram. Þau virka fyrir skráningu, tilkynningar og hreinsun – ekki sannprófun.

HTTP Hooks: Samþætting ytri þjónustu

HTTP hooks POST JSON gagna pakka til fjarlægra endapunkta og túlka svör fyrir ákvörðunarstýringu. Þau gera kleift að samþætta við sannprófunarþjónustur, gagnasöfn og þriðja aðila verkfæri.

Grunn HTTP hook stilling:

{
  “event”: “PreToolUse”,
  “url”: “api.example.com/validate”,
  “headers”: {
    “Authorization”: “Bearer ${API_TOKEN}”
  },
  “timeout”: 5
}

Gagna pakka uppbyggingin samsvarar skipana hook inntaki en kemur sem HTTP POST líkami. Svarinn ákvarðar næstu aðgerð Claude.

HTTP svarameðferð

Samkvæmt opinbera skjalasafninu túlka HTTP hooks svör byggð á stöðukóða og líkamsinnihaldi:

StöðukóðiÁhrifSkilaboð uppspretta 
200Leyfa aðgerðSvar líkami (valfrjálst)
400Loka aðgerðSvar líkami sýndur Claude
500Hook villa, leyfa aðgerðSkráð en ekki sýnd Claude
AnnaðLeyfa aðgerðHook mistakast ekki að loka vinnuflæði

Svar líkaminn getur innihaldið skilaboða svið sem Claude sér sem samhengi. Þetta gerir sannprófunarþjónustum kleift að útskýra hvers vegna aðgerð var lokuð.

Umhverfisbreytu útlegging

HTTP hooks styðja ${VAR} setningafræði í url, headers og öðrum strengjasviðum. Breytur stækka úr umhverfinu þar sem Claude Code keyrir.

Samkvæmt opinbera MCP skjalasafninu inniheldur umhverfisbreytu útlegging sjálfgefna varahlutasetningafræði: ${VAR:-default} stækkar til VAR ef stillt, annars notar sjálfgefið gildi.

Öryggis takmörkun: Samkvæmt GitHub máli #28044 geta HTTP hooks aðeins fengið aðgang að umhverfisbreytum sem eru sérstaklega skráðar í leyfðuEnvVars stillingarsviðinu. Þetta kemur í veg fyrir óviljandi útsetningu á leyndarmálum.

Boðskipta Hooks: Innspýting samhengis

Boðskipta hooks innspýta stýrðum leiðbeiningum í samhengi Claude á tilteknum atburðum. Þau breyta hegðun án ytri ferla eða API kalla.

{
  “event”: “SessionStart”,
  “prompt”: “Þú ert að vinna að TypeScript verkefni. Notaðu alltaf strangar null athuganir og kýs async/await fram yfir promises.”
}

Innsprautað texti verður hluti af kerfisleiðbeiningum Claude fyrir þá lotu. Boðskipta hooks geta einnig notað mótífa breytur sem stækka byggt á atburðargögnum.

Stýrð boðskiptasköpun

Samkvæmt opinbera skjalasafninu styðja boðskipta hooks skipanasvið sem búa til stýrð boðskipti:

{
  “event”: “ContextCompaction”,
  “type”: “prompt”,
  “command”: “./scripts/generate-context-summary.sh”
}

Skipanin tekur við venjulegu JSON inntaki í gegnum stdin og gefur frá sér boðskiptatextann til stdout. Þetta gerir kleift að búa til samhengisvænni leiðbeiningar byggt á verkefnisástandi.

Agent-byggðir hooks

Agent hooks tilgreina undir-agent sem sér um atburðinn í stað beinnar boðskiptainnspýtingar. Undir-agentinn fær samhengi um atburðinn og getur framkvæmt margþætta röksemdafærslu.

{
  “event”: “PostToolUseFailure”,
  “agent”: “debugger”,
  “agentPrompt”: “Tólakall mistókst. Greindu villuna og leggðu til lagfæringar.”
}

Nefndi undir-agentinn verður að vera skilgreind í verkefnastillingum. Agent hooks gera kleift að nota flókna ákvarðanatöku sem einföld boðskiptainnspýting getur ekki veitt.

Hagnýt hook mynstur

Samræður samfélagsins og opinber dæmi leiða í ljós sérstök sjálfvirkni mynstur sem virka áreiðanlega í framleiðslu.

Sjálfvirk forsniðun kóða eftir breytingar

Algengasta mynstrið forsniður kóða sjálfkrafa eftir að Claude breytir skrám:

{
  “event”: “PostToolUse”,
  “matcher”: {
    “toolName”: “edit_file”,
    “pathPattern”: “**/*.{js,ts,jsx,tsx}”
  },
  “command”: “prettier”,
  “args”: [“–write”, “${toolInput.path}”]
}

Mótífið ${toolInput.path} stækkar til breyttrar skráarleiðar. PostToolUse tryggir að forsniðun fari fram eftir árangursríkar breytingar en lokar ekki vinnuflæði Claude.

Loka fyrir breytingar á vernduðum skrám

PreToolUse hooks framfylgja reglum um verndun skráa:

{
  “event”: “PreToolUse”,
  “matcher”: {
    “toolName”: “edit_file”
  },
  “command”: “./scripts/check-protected.sh”
}

Skriptið sannreynir áfangastaðinn gegn vernduðum mótífum og lýkur með kóða 1 til að loka bönnuðum breytingum.

Fá tilkynningu þegar Claude þarf inntak

Samkvæmt opinbera vinnuflæðisleiðarvísirnum geta Notification hooks kallað á skjáborðsviðvaranir eða sent skilaboð til ytri þjónustu:

{
  “event”: “Notification”,
  “command”: “osascript”,
  “args”: [“-e”, “display notification \”${message}\” with title \”Claude Code\””]
}

Þetta kallað er í hvert skipti sem Claude Code sendir tilkynningu, þar með talið þegar beðið er eftir notendainntaki eða eftir að verkefni er lokið.

Endurinnspýting samhengis eftir þjöppun

ContextCompaction hooks endurheimta mikilvægt samhengi þegar samræðugluggan fyllist:

{
  “event”: “ContextCompaction”,
  “type”: “prompt”,
  “command”: “cat .claude/critical-context.md”
}

Úttak skipunarinnar er innsprautað aftur í samhengi Claude eftir að þjöppun fjarlægir eldri skilaboð. Þetta kemur í veg fyrir tap á mikilvægum verkefnissértækum leiðbeiningum.

Endurskoðun stillingabreytinga

Fylgstu með hvenær Claude breytir stillingarskrám:

{
  “event”: “PostToolUse”,
  “matcher”: {
    “toolName”: “edit_file”,
    “pathPattern”: “**/{package.json,.env,*.config.*}”
  },
  “command”: “git”,
  “args”: [“add”, “${toolInput.path}”],
  “async”: true
}

Async keyrsla kemur í veg fyrir að Claude sé lokað á meðan git aðgerðir klárast. Þetta skapar endurskoðunarslóð yfir stillingabreytingar án handvirkrar stigsetningar.

JSON Úttak og ákvörðunarstýring

Skipana hooks geta gefið frá sér skipulagt JSON til að veita ítarlegar endurgjöf umfram einfalda útgöngukóða. Samkvæmt opinbera tilvísuninni gerir JSON úttak mögulegt að margfalt sviða svör sem Claude túlkar fyrir ákvörðunartöku.

{
  “allowed”: false,
  “message”: “Þessi skrá er vernduð af liðsstefnu”,
  “suggestion”: “Búðu til nýja skrá í src/features/ í staðinn”
}

allowed sviðið stýrir hvort aðgerðin heldur áfram. Skilaboðin birtast Claude sem samhengi. The suggestion svið veitir valkostaleiðir.

Til að hooks gefi frá sér JSON verða þau að:

  1. Skrifa gilt JSON til stdout
  2. Hætta með kóða 0 (fyrir leyfilegt) eða 1 (fyrir lokað)
  3. Innihalda að minnsta kosti leyfða boolean sviðið

Claude Code greinir JSON og notar það til að bæta endurgjafarlykkjuna. Útgöngukóðar ákvarða enn aðalákvörðunina, en JSON veitir ríkulegra samhengi.

Tilvísun í hook inntakssvið

Allir hooks fá JSON hlut í gegnum stdin með algengum sviðum auk sértækra atburðargagna. Skilningur á fullu sniðinu gerir kleift að nota flóknari hook rökfræði.

Hook inntak JSON snið sem sýnir algeng svið og sérstök atburðarframlengingar

Algeng inntakssvið

Hver hook fær þessi grunnsvið:

  • event: Nafn hook atburðar (t.d. “PreToolUse”)
  • sessionId: Einstakt auðkenni fyrir núverandi Claude lotu
  • turnId: Auðkenni fyrir núverandi samræðuhluta
  • timestamp: ISO 8601 tímasetning þegar atburðurinn kallaðist á

Tól atburðarsvið

PreToolUse, PostToolUse, og PostToolUseFailure atburðir innihalda:

  • toolName: Nafn tólsins sem verið er að kalla (edit_file, execute_command, o.s.frv.)
  • toolInput: Hlutur sem inniheldur inntaksparametra tólsins
  • toolResponse: Tól úttaksgögn (PostToolUse aðeins)
  • error: Villaupplýsingar þar með talið skilaboð og kóði (PostToolUseFailure aðeins)

The toolInput uppbyggingin er mismunandi eftir tólum. Fyrir edit_file inniheldur hún path og content. Fyrir execute_command inniheldur hún command og args.

Leyfis atburðarsvið

PermissionRequest atburðir innihalda:

  • permissionType: Tegund leyfis sem beðið er um (file_write, command_execute, o.s.frv.)
  • requestedAction: Einkennileg aðgerð sem krefst leyfis
  • resourcePath: Skráarleið eða auðkenni auðlindar sem hefur áhrif á

MCP Tól Hooks

Samkvæmt opinbera hooks tilvísunarskjalsafninu geta hooks samsvarað við Model Context Protocol (MCP) tól með því að nota mcpTool mótíf sviðið. Þetta gerir hook keyrslu mögulega þegar Claude notar ytri tól sem MCP þjónar veita.

{
  “event”: “PreToolUse”,
  “matcher”: {
    “mcpTool”: “database/query”
  },
  “command”: “./scripts/validate-sql.sh”
}

Gildið mcpTool samsvarar við tólnafnið á forminu server-name/tool-name. Þetta gerir kleift að nota sannprófunarrökfræði fyrir gagnasöfnu, API kalla eða aðrar ytri aðgerðir.

GitHub beiðnir um eiginleika benda til vaxandi áhuga á dýpri MCP samþættingu, þar með talið hooks sem geta skoðað MCP þjónustu tilkynningar og brugðist við ytri atburðum.

Öryggissjónarmið

Hooks keyra með sömu heimildum og Claude Code sjálft. Þetta skapar öryggisáhrif fyrir fjölnotenda umhverfi og sameiginlegar stillingar.

Skipana keyrslu sandkassi

Samkvæmt GitHub máli #28044 eru HTTP hooks send í gegnum sandkassa proxy sem takmarkar nettengingar og síar umhverfisbreytur. Skipana hooks hafa engar slíkar takmarkanir – þau keyra með fullum aðgangi að kerfi.

Skjalasafnið mælir með þessum venjum:

  • Geymdu aldrei leyndarmál í hook skipunum
  • Notaðu umhverfisbreytur fyrir viðkvæm gögn
  • Sannreyna öll inntak frá ${…} stækkanir
  • Innleiða frestamörk fyrir ytri þjónustur
  • Notaðu async hooks fyrir ekki-þýðingarmiklar aðgerðir til að koma í veg fyrir aðgerðarblokkun við mistök

Hook keyrslu einangrun

Notendastig hooks í ~/.claude/settings.json gilda fyrir öll verkefni. Þetta skapar áhættu þegar unnið er á milli mismunandi traustsmarka. Verkefnastig hooks taka við notendahookum en geta ekki algjörlega óvirkjað þau.

The /hooks valmynd í Claude Code sýnir alla virka hooks fyrir núverandi lotu. Yfirferð þessa lista áður en unnið er að viðkvæmum verkefnum hjálpar til við að greina hugsanleg öryggisáhyggjur.

Villuleit og bilanaleit

Hook mistök birtast ekki alltaf skýrt í samræðu Claude. Opinbera skjalasafnið veitir nokkrar villuleitar aðferðir.

Hook keyrslu logs

Claude Code logs hook keyrslu í fundarvilluleitarúttakinu. Samkvæmt bilanaleitarleiðbeiningum, leyfa villuleitar logs sýna:

  • Hvaða hooks samsvaruðu við hvern atburð
  • JSON inntakið sem sent var til hverrar hook
  • Stdout og stderr úttak frá hook ferlum
  • Útgöngukóðar og keyrslutími
  • HTTP svarakóðar og líkamar fyrir HTTP hooks

Leyfa villuleitar logs með því að stilla CLAUDE_DEBUG=1 í umhverfinu áður en Claude Code er ræst.

Sérstæð prófun á hooks

Skipana hooks er hægt að prófa utan Claude Code með því að búa til JSON inntak handvirkt:

echo ‘{“event”:”PreToolUse”,”toolName”:”edit_file”,”toolInput”:{“path”:”test.txt”}}’ | ./scripts/my-hook.sh

Þetta sannreynir hook rökfræði án þess að kveikja á raunverulegum Claude aðgerðum. Útgöngukóðinn og stdout/stderr úttak ættu að samsvara væntanlegri hegðun.

Algengar hook mistök

Samræður samfélagsins greina þessi algengu vandamál:

  • Frestar villur: Sjálfgefin 10 mínútna frestur of stuttur fyrir hægar aðgerðir – auka með frestasviðinu
  • Skráarútleggingar mistök: Breytur eins og ${file} ótilgreindar fyrir atburði sem innihalda ekki skráarsamhengi
  • Leyfisvillur: Hook handrit skortir keyrsluréttindi – keyra chmod +x script.sh
  • JSON greiningarvillur: Röng JSON úttak frá hooks – sannreyna með jq áður en skilað er
  • Umhverfisbreytur óaðgengilegar: Breytur ekki sendar til hook ferlis – athuga umhverfi Claude Code

Hook áhrif á afköst

Samstillingar hooks loka vinnuflæði Claude þar til klárað er. Sjálfgefin 10 mínútna frestur kemur í veg fyrir óendanlega hangandi, en jafnvel stuttar tafir safnast upp yfir margar aðgerðir.

Fagmenn greina frá því að einföld sannprófunar hooks hafa óveruleg áhrif á afköst. Forsnið hooks valda merkjanlegum en ásættanlegum áhrifum á afköst. Ytri API kalla geta skapað togstreitu í vinnuflæði. Mikil útreikningaaðgerðir njóta góðs af async keyrslu.

Hook samþykki

Mörg hooks geta samsvarað sama atburði. Samkvæmt tilvísunarskjalsafninu keyra hooks í samfellu í skilgreiningarröð. Ef einhver hook lokar aðgerðinni, keyra eftirfarandi hooks ekki.

Þetta skiptir máli fyrir afköst. Fimm samstillingar hooks á 200ms hver bæta við einni sekúndu á atburð. Samning tengdra sannprófana í eina hook minnkar yfirhöfnina.

Háþróuð mynstur

Fyrir utan grunn sjálfvirkni, gera hooks kleift að nota flókna vinnuflæðis sérstilling.

Stateful hook keðjur

Hooks geta viðhaldið ástandi á milli keyrslna með því að nota skrár eða gagnasöfn. PostToolUse hook gæti skráð árangursríkar aðgerðir sem PreToolUse hook seinna sannreynir gegn:

#!/bin/bash
# Skráðu árangursríkar breytingar
echo “${toolInput.path}” >> .claude/edit-history.txt

Stuðnings PreToolUse hook gæti athugað þessa sögu til að koma í veg fyrir óþarfa aðgerðir eða framfylgja röðunarkröfum.

Skilyrt hook virkjun

Umhverfisbreytur stýra hook hegðun á keyrslutíma. Stillir CLAUDE_SKIP_HOOKS=1 óvirkjar hooks fyrir neyðaraðstæður.

Hooks sjálf geta athugað umhverfis merki:

#!/bin/bash
if [ “$STRICT_MODE” = “1” ]; then
  # Notaðu stranga sannprófun
  exit 1
fi
exit 0

Þetta gerir kleift að nota þróunarham gegn framleiðsluhama án stillingabreytinga.

Margþætt sannprófun

PreToolUse hooks geta innleitt margþætta sannprófun þar sem útgöngukóði 2 leyfir Claude að halda áfram með viðvaranir:

  1. Harð mistök (útkoma 1): Loka hættulegum aðgerðum
  2. Mjúkar viðvaranir (útkoma 2): Vara Claude við að íhuga aftur
  3. Standast með samhengi (útkoma 0 + JSON): Veita viðbótarupplýsingar

Þetta skapar sannprófunarsvið sem er flóknara en tvíundar leyfisveiting/neitun.

Samþætting við CI/CD

Samkvæmt opinbera vettvangssamþættingarskjalsafninu keyrir Claude Code í CI/CD umhverfi fyrir sjálfvirka kóðaskoðun og úrvinnslu mála. Hooks stækka þessa sjálfvirkni.

GitHub Actions flæðisskrár geta skilgreint hooks sem framfylgja liðsstefnum meðan á sjálfvirkum lotum stendur:

– name: Keyra Claude Code með ströngum hooks
  env:
    STRICT_MODE: 1
  run: |
    claude “Endurskoðaðu þennan PR og leggðu til umbætur”

STRICT_MODE flaggan virkjar skilyrt sannprófunarrökfræði í hook handritum. Þetta tryggir að sjálfvirkar lotur fylgi ströngari reglum en gagnvirk þróun.

Endurskoðunarslóða sköpun

PostToolUse hooks í CI umhverfi búa til ítarleg endurskoðunarlög yfir allar Claude aðgerðir:

{
  “event”: “PostToolUse”,
  “command”: “./scripts/log-to-database.sh”,
  “async”: true
}

Bakgrunnsskráning hefur ekki áhrif á afköst en veitir fulla aðgerðarsögu fyrir samræmi og villuleit.

The /hooks Valmynd

Claude Code býður upp á /hooks skipun sem sýnir alla virka hooks fyrir núverandi lotu. Samkvæmt opinbera skjalasafninu sýnir þessi valmynd:

  • Hook atburðar tegund
  • Mótíf mótíf
  • Skipun eða URL endapunkt
  • Hvort hook keyri async
  • Stillingar uppspretta (verkefni, notandi eða búnaður)

Að velja hook sýnir alla stillingar þess og leyfir tímabundna óvirkjun fyrir núverandi lotu.

Óvirkja eða fjarlægja hooks

Hooks er hægt að óvirkja án þess að fjarlægja stillingar með því að bæta við “enabled”: false við hook skilgreininguna. Þetta varðveitir stillingar á meðan það kemur í veg fyrir keyrslu.

Til að fjarlægja hook varanlega, eyða færslu hennar úr viðeigandi settings.json skránni. Breytingar verða virkar við næstu endurræsingu lotu eða þegar keyrt er /reload.

Hooks í færni og agents

Samkvæmt opinbera skjalasafninu gilda hooks sem skilgreindar eru innan færni eða undir-agent stillinga aðeins þegar sú færni eða agent keyrir. Þetta gerir sérsniðna sjálfvirkni mögulega fyrir sérstök vinnuflæði.

Villuleitar undir-agent gæti innihaldið hooks sem skrá alla tólakalla:

{
  “name”: “debugger”,
  “hooks”: [
    {
      “event”: “PostToolUse”,
      “command”: “./scripts/log-debug.sh”,
      “async”: true
    }
  ]
}

Þessir hooks keyra aðeins á meðan debugger agent lotum stendur, ekki meðan á venjulegri Claude Code keyrslu stendur.

Tilvísun í handrit eftir slóð

Hook skipanir styðja bæði hlutlægar og algildar slóðir. Hlutlægar slóðir leysast upp frá verkefnisrótinni þar sem Claude Code keyrir.

Bestu venjur frá samræðum samfélagsins:

  • Geymdu hook handrit í .claude/hooks/ möppunni
  • Notaðu lýsandi nöfn: validate-typescript.sh ekki hook1.sh
  • Gerðu handrit keyrslanleg: chmod +x .claude/hooks/*.sh
  • Innifaluðu shebang línu: #!/usr/bin/env bash eða #!/usr/bin/env python3
  • Bættu villumeðhöndlun við með set -e í bash handritum

Framtíðar hook möguleikar

GitHub beiðnir um eiginleika afhjúpa skipulagðar og beðnar hook framfarir:

  • Inline handrit hooks: Skilgreindu hook rökfræði beint í settings.json án ytri skráa
  • MCP tól samþætting: Kallaðu á MCP þjónustu verkfæri frá hooks í stað kerfisskrifta
  • Margagent samvinna: Hooks sem samhæfa milli Claude tilfella á mismunandi vélum
  • Bætt tegundir: TypeScript gerðaskilgreiningar fyrir hook inntak/úttak snið

Samkvæmt GitHub máli #4274, er beiðnin um samþættar hook tegundir (MCP tól, inline handrit, API kalla) miðuð að því að einfalda stillingar og bæta upplifun forritara.

Oft spurðar spurningar

Getur hooks komið í veg fyrir að Claude keyri hættulegar skipanir?

Já. PreToolUse hooks geta lokað allri tólkeyrslu með því að hætta með kóða 1. Þetta felur í sér skráarbreytingar, skipanakennslu og MCP tólkalla. Hookinn fær fullt tól inntak og getur sannreynt gegn hvaða skilyrðum sem er áður en aðgerðin er leyfð.

Hvernig á ég að villa leita að hook sem virkar ekki?

Virkja villuleitar logs með CLAUDE_DEBUG=1 áður en Claude Code er ræst. Athugaðu lotulögin fyrir hook keyrsluupplýsingar þar með talið hvaða hooks samsvaruðu, JSON inntakið sem sent var, stdout/stderr úttak og útgöngukóðar. Prófaðu hooks sérstætt með því að senda dæmi JSON til hook handritsins.

Virka hooks með öllum Claude Code vettvangi?

Hooks virka í CLI, skjáborðsforritinu og VS Code viðbótinni. Samkvæmt opinbera skjalasafninu keyra hooks hvar sem Claude Code keyrir með aðgang að skráarkerfinu. Claude sem byggir á vafra og farsímaforrit styðja ekki hooks vegna sandkassatakmarkana.

Getur hooks breytt svörum eða hegðun Claude?

Boðskipta hooks innspýta leiðbeiningar sem hafa áhrif á hegðun Claude. Agent hooks úthluta atburðarmeðferð til sérstakra undir-agents. Hins vegar geta hooks ekki beint breytt texta sem Claude býr til eða röksemdafærsluferli – þau vinna með því að veita samhengi og loka aðgerðum.

Hver er munurinn á async og sync hooks?

Samstillingar hooks loka vinnuflæði Claude þar til klárað er eða fresturinn rennur út. Ósamstilltar hooks keyra í bakgrunni án þess að loka. Sync hooks geta komið í veg fyrir aðgerðir í gegnum útgöngukóða. Async hooks geta ekki lokað þar sem Claude heldur áfram áður en hookinn klárast. Notaðu async fyrir skráningu og tilkynningar, sync fyrir sannprófun.

Hvernig á ég að deila hooks á milli liðs?

Geymdu .claude/settings.json skrána í útgáfustýringu. Verkefnastig hooks gilda fyrir alla liðsmenn sem klóna geymsluna. Fyrir stefnur á öllu fyrirtækinu geta lið haldið utan um sameiginlega notendastig stillingarskrá sem meðlimir afrita í ~/.claude/settings.json.

Getur HTTP hooks kallað innri API bak við eldveggi?

Já, ef Claude Code keyrir í umhverfi með nettengingu við þessi API. HTTP hooks gera venjulegar POST beiðnir frá vélinni sem keyrir Claude Code. Fyrirtækja eldveggir og VPN gilda venjulega. Sandkassaproxýinn sem nefndur er í skjalasafninu stýrir útsetningu umhverfisbreyta, ekki netbeiningu.

Eykur hooks notkun Claude Code á merkjum?

Boðskipta hooks innspýta texta í samhengi Claude, sem eyðir merkjum. Skipana og HTTP hooks hafa ekki bein áhrif á merkjum notkun, en úttak þeirra (villuboð, tillögur) verður hluti af samræðusamhengi. Útgöngukóði 2 með útskýrandi skilaboðum bætir meira samhengi við en útgöngukóði 1 með einfaldri blokkun.

Niðurstaða

Claude Code hooks breytir gervigreindar aðstoðarmanni frá öflugu tól yfir í fullkomlega sjálfvirkt þróunarvettvang. Atburðarkerfið veitir afskiptapunktum í gegnum vinnuflæði Claude – frá lotu upphafi í gegnum samhengis þjöppun.

Skipana hooks sjá um staðbundna sannprófun og forsnið. HTTP hooks samþætta ytri þjónustur og gagnasöfn. Boðskipta hooks breyta hegðun í gegnum samhengis innspýtingu. Saman gera þessi sjálfvirkni mynstur sem framfylgja liðsstefnum, viðhalda gæðum kóða og samþætta við núverandi þróunaraðstöðu.

Mótífkerfið síar hooks í ákveðin verkfæri og skráarmótíf. Útgöngukóðar og JSON úttak stýra ákvörðunarflæði. Async keyrsla kemur í veg fyrir aðgerðarblokkun við hægar aðgerðir. Fullt stillingarsnið styður allt frá einfaldri sjálfvirkri forsniðun til flókinna margþætta sannprófana.

Byrjaðu með einföldum PostToolUse hooks fyrir kóða forsniðun. Bættu við PreToolUse sannprófun þegar stefnur koma fram. Tilraunastarf með boðskipta hooks fyrir hegðunarbreytingar. Búðu til HTTP samþættingar fyrir liðsvið víðtæka framfylgni.

Athugaðu opinbera Claude Code skjalasafnið fyrir fulla hooks tilvísun og uppfærð stillingarsnið þegar nýir möguleikar sendast út.

AI Perks

AI Perks veitir aðgang að einstökum afslætti, inneignum og tilboðum á gervigreindarverkfæri, skýjaþjónustu og API til að hjálpa sprotafyrirtækjum og forritara að spara peninga.

AI Perks Cards

This content is for informational purposes only and may contain inaccuracies. Credit programs, amounts, and eligibility requirements change frequently. Always verify details directly with the provider.