Claude Code hook అనేది సెషన్లో నిర్దిష్ట సమయంలో యాప్ నడిపే కమాండ్. ఈ మార్గదర్శి ప్రాజెక్ట్ పరిధిలో ఒక SessionStart hook జోడిస్తుంది. అది ప్రస్తుత Git బ్రాంచ్ చదివి సంభాషణను ప్రారంభించినప్పుడు లేదా కొనసాగించినప్పుడు చిన్న సందర్భ పంక్తి ఇస్తుంది. ఇది Anthropic ప్రస్తుత hook సూచన పత్రాన్ని అనుసరిస్తుంది; దాన్ని 2026 అక్టోబర్ 19న తనిఖీ చేశాం. BIG CHANGE Nodeతో స్క్రిప్ట్ను నేరుగా, సెట్టింగ్ల JSONను కూడా తనిఖీ చేసింది; Claude Code hook నడపలేదు లేదా మోడల్ సమాధానం పరీక్షించలేదు.
ముఖ్యమైన మార్పు
- ఏం మారింది: ఈ ప్రాజెక్ట్
SessionStarthook Claude Code సంభాషణను ప్రారంభించినప్పుడు లేదా కొనసాగించినప్పుడు చిన్న Git బ్రాంచ్ పంక్తిని ఇస్తుంది. - ఇది ఎందుకు ముఖ్యం: ప్రతిసారి చేతితో అతికించకుండానే ప్రారంభం లేదా పునఃప్రారంభంలో ప్రస్తుత బ్రాంచ్ సెషన్ సందర్భానికి చేరుతుంది.
- గమనించాల్సింది: సందర్భం నియమాన్ని అమలు చేయదు, మోడల్ సమాధానానికి హామీ ఇవ్వదు. మీ నమ్మకమైన ప్రాజెక్ట్లో ప్రారంభం, పునఃప్రారంభం సమయంలో అది నిజంగా అందుతుందో తనిఖీ చేయండి.
అమర్చే ముందు
మార్చేందుకు మీకు అనుమతి ఉన్న Git ప్రాజెక్ట్ వాడండి. ఒకే టెర్మినల్లో Claude Code, Node.js, Git అందుబాటులో ఉండాలి; ప్రాజెక్ట్లోని .claude/settings.json ఫైల్ మార్చేందుకు అనుమతి కావాలి. తనిఖీ చేయండి: node --version, git --version , claude --version. సిద్ధం చేసిన కంప్యూటర్లో Claude Code 2.1.301, Node 24.19.0 ఉన్నాయి; ఇవి గమనించిన వెర్షన్లు, కనీస అవసరాలు కావు.
మోడల్కు పంపేముందు బ్రాంచ్ పేరు పరిశీలించండి. బ్రాంచ్లో క్లయింట్, టికెట్ లేదా ఘటన పేరు ఉండవచ్చు. అక్షరాలను వడపోయడం, వాక్యాన్ని చిన్నది చేయడం ఆ అర్థాన్ని తొలగించవు. బ్రాంచ్ పేరు మోడల్ సందర్భానికి ఆమోదించబడితేనే ఉదాహరణ అమర్చండి. లేకపోతే అనుమతించిన సున్నితేతర స్థితిని చూపేలా స్క్రిప్ట్ మార్చి, అమర్చే ముందు మార్పును సమీక్షించండి. Anthropic డేటా వినియోగ పత్రాలు సేవలో డేటా నిర్వహణను వివరిస్తాయి; మీ ప్రాజెక్ట్ అనుమతులనూ వర్తింపజేయండి.
Hook కమాండ్లు మీ వినియోగదారు అధికారాలతో నడుస్తాయి. ప్రారంభించే ముందు ఇప్పటికే ఉన్న ప్రాజెక్ట్, వినియోగదారు hookలు, సంస్థ విధానం, పూర్తి స్క్రిప్ట్ తనిఖీ చేయండి. ప్రాజెక్ట్ సెట్టింగ్లను రిపోజిటరీలో కమిట్ చేయవచ్చు; .claude/settings.local.json స్థానికంగా ఉంటుంది. కాన్ఫిగరేషన్ ఆ ప్రాజెక్ట్కు పరిమితం కావడానికి ఈ ఉదాహరణ ప్రాజెక్ట్ సెట్టింగ్ల ఫైల్ వాడుతుంది.
రెండు ఫైళ్లు అమర్చండి
- ప్రాజెక్ట్లో
.claude/hooks/సృష్టించండి. ఈ బ్లాక్ మొత్తాన్ని.claude/hooks/session-context.cjsగా భద్రపరచండి.
'use strict';
const { execFileSync } = require('node:child_process');
const project = process.env.CLAUDE_PROJECT_DIR;
if (!project) {
process.stderr.write('CLAUDE_PROJECT_DIR is unavailable\n');
process.exit(1);
}
try {
const raw = execFileSync('git', ['-C', project, 'branch', '--show-current'], {
encoding: 'utf8',
timeout: 1500,
maxBuffer: 4096,
stdio: ['ignore', 'pipe', 'pipe'],
}).trim();
const branch = raw ? raw.replace(/[^A-Za-z0-9._/-]/g, '_').slice(0, 80) : 'detached HEAD';
process.stdout.write(`Current project branch: ${branch}\n`);
} catch {
process.stderr.write('Could not read the project branch; check Git and project path\n');
process.exit(1);
}Git చైల్డ్ ప్రాసెస్కు 1.5 సెకన్ల పరిమితి, 4,096 బైట్ల అవుట్పుట్ బఫర్ ఉన్నాయి. detached HEADలోలాగా బ్రాంచ్ ఫలితం ఖాళీ అయితే అది detached HEAD అవుతుంది. ప్రాజెక్ట్ పాత్ లేకపోవడం లేదా Git వైఫల్యంతో చిన్న stderr నిర్ధారణ, ఎగ్జిట్ కోడ్ 1 వస్తాయి.
- ఇప్పటికే ఉన్న మీ
.claude/settings.jsonతెరవండి. కింద ఉన్నhooks.SessionStartఎంట్రీని ఇతర సెట్టింగ్లు, hook సమూహాలతో కలపండి; పాత ఎంట్రీలు ఉంచండి. బ్లాక్ సమీక్షించిన ప్యాకెట్లోని పూర్తిsettings.example.jsonచూపుతుంది. ఫైల్లో ఇప్పటికేSessionStartఎంట్రీలు ఉంటే వాటి అరే మార్చకుండా ఈ సమూహాన్ని అందులో జోడించండి.
{
"hooks": {
"SessionStart": [
{
"matcher": "startup|resume",
"hooks": [
{
"type": "command",
"command": "node",
"args": ["${CLAUDE_PROJECT_DIR}/.claude/hooks/session-context.cjs"],
"timeout": 5
}
]
}
]
}
}Matcher కొత్త, పునఃప్రారంభించిన సెషన్లను కవర్ చేస్తుంది. Anthropic clear, compact , fork లను కూడా SessionStart మూలాలుగా పేర్కొంటుంది; ఉదాహరణ వాటిని ఉద్దేశపూర్వకంగా వదిలేస్తుంది. args ఫీల్డ్ exec రూపాన్ని ఎంచుకుంటుంది: Claude Code node ను పరిష్కరించిన ప్రాజెక్ట్ స్క్రిప్ట్ పాత్ ఒకే ఆర్గ్యుమెంట్గా ఇచ్చి పిలుస్తుంది; shell quoting లేదా parsing ఉండదు. Windowsలో node.exe నిజమైన executableగా లభించాలి; .cmd shim exec రూపానికి సరిపోదు. కమాండ్కు ఐదు సెకన్ల hook పరిమితి, స్క్రిప్ట్లోని 1.5 సెకన్ల Git పరిమితికి వేరు.
ముందు స్క్రిప్ట్, తర్వాత Claude Code తనిఖీ చేయండి
- Claude Code తెరవేముందు ప్రాజెక్ట్ టెర్మినల్లో స్క్రిప్ట్ నడిపి అవుట్పుట్ను Gitతో పోల్చండి. PowerShellలో:
$env:CLAUDE_PROJECT_DIR = (Get-Location).Path
node .claude/hooks/session-context.cjs
git branch --show-currentBashలో:
CLAUDE_PROJECT_DIR="$PWD" node .claude/hooks/session-context.cjs
git branch --show-currentస్క్రిప్ట్ stdoutలో సరిగ్గా ఒక్క పంక్తి రావాలి: Current project branch: BRANCH, ఇందులో BRANCH అనేది స్క్రిప్ట్ అక్షర ఫిల్టర్, 80-అక్షర పరిమితి తర్వాత Git ఫలితం. Detached HEADలో Current project branch: detached HEAD ముద్రిస్తుంది. ప్రత్యక్ష తనిఖీ ఈ టెర్మినల్లో స్థానిక స్క్రిప్ట్ పనిచేస్తుందని మాత్రమే నిరూపిస్తుంది. మా సిద్ధత తనిఖీలో సాధారణ బ్రాంచ్ Gitతో సరిపోయింది; లేని, చెల్లని ప్రాజెక్ట్ పాత్లు ఖాళీ stdout, stderr నిర్ధారణ, ఎగ్జిట్ 1 ఇచ్చాయి. పొడవైన పేరు పరిమితి, detached HEAD ప్రత్యామ్నాయాన్ని సోర్స్లో చూశాం, కానీ ఆ సందర్భాలు నడపలేదు.
- నమ్మకమైన ప్రాజెక్ట్లో కొత్త ఇంటరాక్టివ్ Claude Code ప్రాసెస్ను
claude --debug-file STARTUP_PRIVATE_LOGతో ప్రారంభించి, మీ నియంత్రణలోని ప్రైవేట్ పాత్ వాడండి. workspace trust అంగీకరించే ముందు ప్రాజెక్ట్, వినియోగదారు hookలు సమీక్షించండి. debug లాగ్లోSessionStartఈవెంట్, మూలంstartup, ఎంచుకున్న స్క్రిప్ట్ పాత్, ఎగ్జిట్ స్థితి, అవుట్పుట్ నిర్వహణ చూడండి. టూల్ వాడటం లేదా Git స్వతంత్రంగా చదవటం అనుమతించకుండా Claudeకు అందిన బ్రాంచ్ సందర్భం ఏమిటో అడగండి. సమాధానం, debug రికార్డును నేర ఫలితంతో పోల్చండి. Hook stdout Claude సందర్భంలో చేరుతుంది; కనిపించే UIలో సందేశంగా వస్తుందని హామీ లేదు. - ఆ సెషన్ నుంచి బయటకు రండి. వేరే ప్రాసెస్లో
claude --debug-file RESUME_PRIVATE_LOG --resumeతో కొనసాగించి, తర్వాతSessionStartresumeఈవెంట్ తనిఖీ చేయండి; టూల్ లేదా Git మళ్లీ చదవకుండా ప్రశ్న తనిఖీ పునరావృతం చేయండి. రెండు debug లాగ్లను ప్రైవేట్గా ఉంచండి; ప్రాజెక్ట్ వివరాలు బయటపడవచ్చు. ఇంటరాక్టివ్ కాని-pలేదా SDK రన్లో అదే workspace-trust ప్రశ్న ఉండదు, రిపోజిటరీ hookలు స్వయంచాలకంగా నడవవచ్చు. కాబట్టి ఈ తనిఖీకి ఇంటరాక్టివ్ పద్ధతి వాడండి. ఫైల్ వాచర్ సాధారణంగా hook సెట్టింగ్ల మార్పులను తీసుకుంటుందని Anthropic చెబుతుంది; కానీ కొత్త ప్రాసెస్తో ప్రారంభం, పునఃప్రారంభ పరీక్ష మరింత స్పష్టంగా ఉంటుంది.
తర్వాత సాధారణ ప్రాజెక్ట్ పనిలో బ్రాంచ్ మారితే ప్రత్యక్ష తనిఖీ, కొత్త సెషన్ పునరావృతం చేసి పంక్తి మారుతుందో చూడండి. ఈ మార్గదర్శి పరీక్షించామని చెప్పటానికే బ్రాంచ్ మార్చవద్దు.
నడవకపోతే
స్క్రిప్ట్ ప్రత్యక్ష ఫలితంతో మొదలుపెట్టి JSON కలపడం, SessionStart స్పెల్లింగ్, startup|resume matcher, ప్రాజెక్ట్-రూట్ పాత్, node , git అందుబాటు, workspace trust, debug లోపాలు తనిఖీ చేయండి. CLAUDE_PROJECT_DIR లేకపోతే CLAUDE_PROJECT_DIR is unavailable ను stderrలో ముద్రిస్తుంది. తప్పు ప్రాజెక్ట్ పాత్ లేదా Git వైఫల్యం Could not read the project branch; check Git and project path ముద్రిస్తుంది. రెండూ ఎగ్జిట్ 1 ఇస్తాయి, సందర్భ పంక్తి ఇవ్వవు. SessionStart వైఫల్యం నిర్ధారణ కోసం మాత్రమే, పని అడ్డుకోదు; చర్యకు అడ్డుకట్టగా ఉపయోగపడదు. టూల్ చర్యను నియంత్రించేందుకు Anthropic PreToolUse ను పేర్కొంటుంది; అది వేరే ఈవెంట్, విడిగా సమీక్షించిన రూపకల్పన అవసరం.
స్క్రిప్ట్ స్థానిక Git మాత్రమే నడుపుతుంది; నెట్వర్క్ అభ్యర్థన లేదా మోడల్ కాల్ చేయదు. Claude Code ప్రారంభం, కొనసాగింపు, ప్రశ్న తనిఖీలు ఖాతా, ప్రొవైడర్ లేదా మోడల్ పరిమితిని వినియోగించవచ్చు; Anthropic ఖర్చుల మార్గదర్శిలో ప్రస్తుత షరతులు ఉన్నాయి. ఇక్కడ స్థిర ధర లేదా చెల్లించిన సెషన్ పరీక్షను ప్రకటించడం లేదు.
సంభాషణ మొదలయ్యాక వేరే పని కోసం మా Claude Code సెషన్ సందర్భాన్ని పరిశీలించి కొనసాగించే మార్గదర్శి సందర్భ పరిశీలన, కొనసాగింపును వివరిస్తుంది. ఈ ప్రారంభ hook అమర్చదు.
మూలాలు, మరింత చదవండి
- Anthropic, Claude Code hook సూచన — ప్రస్తుత ప్రాథమిక నిర్దేశాన్ని 2026 అక్టోబర్ 19న తనిఖీ చేశాం. ఇది
SessionStartమూలాలు, matcherలు, exec రూపంargs, పాత్ placeholderలు, stdout సందర్భం, సెట్టింగ్లు మళ్లీ లోడ్ చేయడం, నమ్మకం, debug లాగ్లు, అడ్డుకోని వైఫల్యాన్ని వివరిస్తుంది. ఇది పత్రాల సమాచారం, BIG CHANGE hook నడపడం కాదు. - Anthropic, hookలతో చర్యలు ఆటోమేట్ చేయండి — hook అమరిక, పరీక్షకు అధికారిక సూచనలు. పైనున్న నిర్దిష్ట స్క్రిప్ట్, సెట్టింగ్లు ఈ మార్గదర్శి కోసం సమీక్షించిన పరిమిత BIG CHANGE ఉదాహరణలు; విక్రేత పరీక్ష ఫలితాన్ని కాపీ చేసినవి కావు.
- Anthropic, Claude Code అమరిక — ఇన్స్టాలేషన్, పర్యావరణ అవసరాలు. ఉదాహరణ వాడేముందు ప్రస్తుత ప్లాట్ఫారమ్ సూచనలు చూడండి.
- Anthropic, Claude Code డేటా వినియోగం — బ్రాంచ్ సమాచారాన్ని మోడల్ సందర్భంలో పంపేముందు సమీక్షించాల్సిన ప్రొవైడర్ ప్రస్తుత డేటా నిర్వహణ షరతులు; ప్రాజెక్ట్ అనుమతి వేరే నిర్ణయం.
- Anthropic, ఖర్చులను సమర్థంగా నిర్వహించండి — ఇంటరాక్టివ్ తనిఖీల కోసం ప్రస్తుత ఖాతా, వినియోగ సూచనలు. స్థానిక Git స్క్రిప్ట్ స్వయంగా మోడల్ లేదా నెట్వర్క్ అభ్యర్థన చేయదు.



