जग स्थिर नाही.RSS
BIG CHANGE.
एका टॅपवर BIG CHANGE
एका टॅपवर BIG CHANGE

मोठे चित्र पाहण्यासाठी जागा ठेवा.

BIG CHANGE तुमच्या होम स्क्रीनवर किंवा डेस्कटॉपवर जोडा. ते स्वतंत्र विंडोमध्ये उघडेल आणि तुम्ही ऑनलाइन असताना ताज्या बातम्या दाखवेल.

iPhone & iPad
Safari मध्ये bigchange.ai उघडा. Share वर टॅप करा, मग Add to Home Screen निवडा. Open as Web App दिसल्यास सुरू करा, मग Add टॅप करा.
Android
Chrome मध्ये bigchange.ai उघडा. ब्राउझर मेनूमधून Install app किंवा Add to Home screen निवडा.
डेस्कटॉप
Chrome किंवा Edge मध्ये अॅड्रेस बारमधील इंस्टॉल आयकॉन किंवा ब्राउझरचा अॅप मेनू वापरा. Mac वरील Safari मध्ये File → Add to Dock निवडा.

Markdown आवृत्ती

AI-translated from English; not yet reviewed by a fluent editor.

# Claude Code सत्र सुरू होताना मर्यादित प्रकल्प संदर्भ hook जोडा

> सध्याची Git शाखा Claude Code संदर्भात जोडणारा छोटा प्रकल्प SessionStart hook बसवा. थेट आउटपुट, सुरुवात, पुन्हा सुरू करणे आणि अपयशातील वर्तन तपासा.

By BIG CHANGE Editorial

Published: 2026-10-20T00:22:54.831Z
Updated: 2026-10-20T00:22:54.831Z
Canonical: https://bigchange.ai/blog/claude-code-session-start-branch-context-hook-guide

![Conceptual charcoal illustration of an unbranded desktop monitor with one short orange stroke above two soft charcoal strokes; a keyboard rests in front.](https://bigchange.ai/api/media/file/claude-code-session-start-context-hero-v2.png)
AI-generated conceptual illustration by BIG CHANGE; no actual Claude Code interface, hook execution or model result is depicted.

Claude Code hook म्हणजे सत्रातील ठरावीक वेळी ॲप चालवत असलेली कमांड. या मार्गदर्शकात प्रकल्पापुरता एक `SessionStart` hook जोडला आहे. तो सध्याची Git शाखा वाचून संभाषण सुरू किंवा पुन्हा सुरू केल्यावर संदर्भाची छोटी ओळ देतो. याचा आधार [Anthropic चा सध्याचा hook संदर्भ](https://code.claude.com/docs/en/hooks) असून तो 19 ऑक्टोबर 2026 रोजी तपासला. BIG CHANGE ने Node वापरून स्क्रिप्ट थेट तपासली आणि सेटिंग्ज JSON तपासले; आम्ही Claude Code hook चालवला नाही किंवा मॉडेलचे उत्तर तपासले नाही.

## मोठा बदल

- **काय बदलले:** प्रकल्पाचा हा `SessionStart` hook 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 चे डेटा वापर दस्तऐवज](https://code.claude.com/docs/en/data-usage) सेवेतील डेटा हाताळणी स्पष्ट करतात; स्वतःच्या प्रकल्पाच्या परवानग्याही लागू करा.

Hook कमांड तुमच्या वापरकर्ता अधिकारांनी चालतात. सुरू करण्यापूर्वी विद्यमान प्रकल्प व वापरकर्ता hook, संस्थेचे धोरण आणि संपूर्ण स्क्रिप्ट तपासा. प्रकल्पाच्या सेटिंग्ज रिपॉझिटरीत कमिट होऊ शकतात; `.claude/settings.local.json` स्थानिक राहते. हे उदाहरण प्रकल्प सेटिंग्ज फाइल वापरते, त्यामुळे मांडणी त्या प्रकल्पापुरती मर्यादित राहते.

## दोन्ही फाइल बसवा

1. प्रकल्पात `.claude/hooks/` तयार करा. हा संपूर्ण ब्लॉक `.claude/hooks/session-context.cjs` म्हणून साठवा.

```javascript
'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 मिळतो.

2. तुमची विद्यमान `.claude/settings.json` उघडा. खालील `hooks.SessionStart` नोंद इतर सेटिंग्ज व hook गटांत मिसळा; आधीच्या नोंदी जपा. ब्लॉक तपासलेल्या पॅकेटमधील संपूर्ण `settings.example.json` दाखवतो. फाइलमध्ये आधीच `SessionStart` नोंदी असतील तर ॲरे बदलण्याऐवजी त्यात हा गट जोडा.

```json
{
  "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 तपासा

3. Claude Code उघडण्यापूर्वी प्रकल्प टर्मिनलमध्ये स्क्रिप्ट चालवा आणि आउटपुट Git शी तुलना करा. PowerShell मध्ये:

```powershell
$env:CLAUDE_PROJECT_DIR = (Get-Location).Path
node .claude/hooks/session-context.cjs
git branch --show-current
```

Bash मध्ये:

```bash
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 पर्याय स्रोतामध्ये तपासले, पण ते प्रसंग चालवले नाहीत.

4. विश्वासार्ह प्रकल्पात नवीन **परस्परसंवादी** Claude Code प्रक्रिया `claude --debug-file STARTUP_PRIVATE_LOG` सह सुरू करा आणि स्वतःच्या नियंत्रणातील खासगी पथ वापरा. workspace trust स्वीकारण्यापूर्वी प्रकल्प व वापरकर्ता hook तपासा. debug लॉगमध्ये `SessionStart` घटना, स्रोत `startup`, निवडलेला स्क्रिप्ट पथ, निर्गमन स्थिती आणि आउटपुट हाताळणी पाहा. साधन वापरण्यास किंवा स्वतंत्रपणे Git वाचण्यास परवानगी न देता Claude ला मिळालेल्या शाखा संदर्भाबद्दल विचारा. उत्तर आणि debug नोंद थेट निकालाशी तुलना करा. Hook stdout Claude च्या संदर्भात जातो; दृश्यमान UI मध्ये संदेश म्हणून दिसेल याची हमी नाही.
5. त्या सत्रातून बाहेर पडा. स्वतंत्र प्रक्रियेत `claude --debug-file RESUME_PRIVATE_LOG --resume` सह पुन्हा सुरू करा, मग `SessionStart` `resume` घटना तपासा आणि साधन किंवा Git पुन्हा न वाचता प्रश्नाची तपासणी पुन्हा करा. दोन्ही debug लॉग खासगी ठेवा; प्रकल्पाचे तपशील उघड होऊ शकतात. गैर-परस्परसंवादी `-p` किंवा SDK रनमध्ये तसाच workspace-trust प्रश्न येत नाही आणि रिपॉझिटरी hook आपोआप चालू शकतात, म्हणून या तपासणीत परस्परसंवादी पद्धत वापरा. Anthropic नुसार फाइल निरीक्षक सहसा hook सेटिंग्जमधील बदल टिपतो, पण नवीन प्रक्रियेमुळे सुरुवात आणि पुन्हा सुरू होण्याची चाचणी स्पष्ट होते.

नंतर नेहमीच्या प्रकल्प कामातून शाखा बदलल्यास थेट तपासणी व नवीन सत्र पुन्हा चालवून ओळ बदलते का पाहा. हा मार्गदर्शक तपासला असे म्हणण्यासाठीच शाखा बदलू नका.

## चालत नसल्यास

स्क्रिप्टच्या थेट निकालापासून सुरुवात करा; मग 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 च्या खर्च मार्गदर्शकात](https://code.claude.com/docs/en/costs) सध्याच्या अटी आहेत. येथे ठरावीक किंमत दिलेली नाही किंवा पैसे दिलेल्या सत्र चाचणीचा दावा नाही.

संभाषण सुरू झाल्यानंतरच्या स्वतंत्र कामासाठी आमचा [Claude Code सत्राचा संदर्भ पाहण्याचा व पुढे चालू ठेवण्याचा मार्गदर्शक](https://bigchange.ai/blog/claude-code-session-context-continue-guide) संदर्भ तपासणी व पुढे सुरू ठेवणे समजावतो. तो सुरुवातीचा हा hook मांडत नाही.

## स्रोत आणि पुढील वाचन

- [Anthropic, Claude Code hook संदर्भ](https://code.claude.com/docs/en/hooks) — सध्याचे प्राथमिक तपशील 19 ऑक्टोबर 2026 रोजी तपासले. यात `SessionStart` स्रोत व matcher, exec रूप `args`, पथ placeholder, stdout संदर्भ, सेटिंग्ज पुन्हा लोड करणे, विश्वास, debug लॉग व काम न थांबवणारे अपयश नोंदवले आहेत. हे दस्तऐवज आहेत, BIG CHANGE ने hook चालवणे नाही.
- [Anthropic, hook वापरून कृती स्वयंचलित करा](https://code.claude.com/docs/en/hooks-guide) — hook मांडणी व चाचणीची अधिकृत पद्धत. वरील नेमकी स्क्रिप्ट व सेटिंग्ज या मार्गदर्शकासाठी तपासलेले मर्यादित BIG CHANGE उदाहरण आहे; विक्रेत्याच्या चाचणीचा कॉपी केलेला निकाल नाही.
- [Anthropic, Claude Code मांडणी](https://code.claude.com/docs/en/setup) — स्थापना व वातावरणाच्या आवश्यकता. उदाहरण वापरण्यापूर्वी प्लॅटफॉर्मच्या सध्याच्या सूचना पाहा.
- [Anthropic, Claude Code डेटा वापर](https://code.claude.com/docs/en/data-usage) — शाखेची माहिती मॉडेल संदर्भात पाठवण्यापूर्वी तपासण्यासाठी पुरवठादाराच्या सध्याच्या डेटा हाताळणी अटी; प्रकल्पाचा अधिकार वेगळा निर्णय आहे.
- [Anthropic, खर्च प्रभावीपणे सांभाळा](https://code.claude.com/docs/en/costs) — परस्परसंवादी तपासणीसाठी खाते व वापराची सध्याची माहिती. स्थानिक Git स्क्रिप्ट स्वतः मॉडेल किंवा नेटवर्ककडे विनंती करत नाही.

## Sources

- [Claude Code hook संदर्भ](https://code.claude.com/docs/en/hooks) — Anthropic चा सध्याचा प्राथमिक मॅन्युअल, 19 ऑक्टोबर 2026 च्या मंजूर स्नॅपशॉटशी व लेखनावेळी पुन्हा तपासलेला. SessionStart startup/resume स्रोत व matcher चा अर्थ, exec रूप command व args, प्रकल्प-रूट placeholder, साधा stdout संदर्भ, सेटिंग्ज निरीक्षक, workspace trust, debug-file तपासणी, Windows मधील खऱ्या executable चा नियम व काम न थांबवणाऱ्या SessionStart त्रुटी स्पष्ट करतो. उत्पादनाचे वर्तन सांगतो; BIG CHANGE ने Claude ने बोलावलेला hook चालवला नाही. मॅन्युअलची ठरावीक सुधारणा तारीख दिलेली नव्हती.
- [hook वापरून कृती स्वयंचलित करा](https://code.claude.com/docs/en/hooks-guide) — Anthropic ची अधिकृत मांडणी व चाचणी पद्धत. वाचकाच्या hook कॉन्फिगरेशन व निदान प्रक्रियेस आधार देते; BIG CHANGE ने Claude Code मध्ये उदाहरण चालवले असा दावा नाही. लेखातील नेमकी मर्यादित Node स्क्रिप्ट व सेटिंग्ज स्वतंत्र तपासलेल्या स्थानिक अंमलबजावणी पॅकेटमधून आली.
- [Claude Code ची प्रगत मांडणी](https://code.claude.com/docs/en/setup) — स्थानिक Claude Code मांडणी तपासण्यासाठी अधिकृत स्थापना व वातावरण संदर्भ. तयारीत फक्त आवृत्ती 2.1.301 दिसली; हा स्रोत तिला किमान आवश्यकता बनवत नाही.
- [Claude Code डेटा वापर](https://code.claude.com/docs/en/data-usage) — खात्यानुसार बदलणाऱ्या अधिकृत डेटा हाताळणी अटी. Git शाखेची माहिती मॉडेल संदर्भात ठेवण्यापूर्वी त्या पाहण्यास लेख सांगतो; गाळणे व लहान करणे शाखेच्या नावातून गोपनीय ग्राहक किंवा घटनेची माहिती उघड होणे रोखत नाही. सर्वसमावेशक गोपनीयता हमी गृहीत नाही.
- [खर्च प्रभावीपणे सांभाळा](https://code.claude.com/docs/en/costs) — परस्परसंवादी सुरुवात/पुन्हा सुरू होण्याच्या प्रश्न तपासणीसाठी अधिकृत खाते व मॉडेल वापर मार्गदर्शन. स्थानिक स्क्रिप्ट स्वतः मॉडेल किंवा नेटवर्क विनंती करत नाही; खरे Claude सत्र प्लॅन, पुरवठादार किंवा API मर्यादा खर्च करू शकतात. निश्चित किंमत किंवा पैसे दिलेली चाचणी असल्याचा दावा नाही.
- [Claude Code सत्राचा संदर्भ कसा पाहावा आणि पुढे चालू ठेवावा](https://bigchange.ai/blog/claude-code-session-context-continue-guide) — पूर्वीचा BIG CHANGE लेख 414 केवळ संदर्भपूर्ण अंतर्गत दुवा व संबंध वर्गीकरणासाठी आहे. तो विद्यमान संभाषण तपासणे व त्याचे काम पुढे चालू ठेवणे सांगतो; या hook च्या अंमलबजावणीचा पुरावा किंवा त्याच घटनेचा थेट दिनांकित पूर्ववर्ती नाही.