Claude Code: एजेंटिक कोडिंग के लिए सर्वोत्तम प्रथाएँ
(anthropic.com)- Claude Code एक CLI-आधारित agentic coding टूल है, जिसे विभिन्न development environments और languages में लचीले ढंग से लागू किया जा सकता है
- CLAUDE.md configuration, tool allowlist management, और custom commands बनाकर Claude की उपयोगिता को अधिकतम किया जा सकता है
- Workflow-आधारित strategies (explore-plan-implement-commit, test-driven development, visual iteration आदि) लागू करने पर यह प्रभावी रहता है
- Headless mode और multi-Claude configuration के साथ automation और parallel work भी संभव है
- Claude को Git, GitHub, Jupyter जैसे विभिन्न development tools के साथ integrate करके उन्नत उपयोग संभव है
Claude Code अवलोकन
- Claude Code agentic coding (command line-आधारित automated coding) के लिए एक टूल है
- इसे इस तरह डिज़ाइन किया गया है कि Anthropic के आंतरिक developers और researchers Claude को coding में अधिक स्वाभाविक रूप से integrate कर सकें
- Low-level interface और dependency-free design की वजह से यह किसी एक खास development style तक सीमित नहीं है,
- डेवलपर्स Claude को अपनी ज़रूरत के अनुसार configure और उपयोग कर सकते हैं
- नतीजतन, यह एक बहुत शक्तिशाली लेकिन लचीला और सुरक्षित coding power tool बन जाता है
- इसकी कमी यह है कि नए उपयोगकर्ताओं के लिए learning curve काफ़ी ऊँची हो सकती है,
- इसलिए अपनी खुद की best practices विकसित करने की प्रक्रिया ज़रूरी होती है
- यह लेख Claude Code का वास्तविक उपयोग कर चुके internal teams और external engineers के अनुभव के आधार पर,
- विभिन्न languages, codebases, और environments में प्रभावी सामान्य patterns प्रस्तुत करता है
- यहाँ दिए गए बिंदु अंतिम उत्तर नहीं, बल्कि एक शुरुआती बिंदु हैं; हर व्यक्ति को अपने अनुसार प्रयोग और सुधार करने की सलाह दी जाती है
# 1. Settings customization
Claude Code एक agentic coding assistant है जो अपने आप context इकट्ठा करके prompt बनाता है
यह context collection समय और tokens दोनों खर्च करता है, लेकिन environment को समायोजित करके इसे optimize किया जा सकता है
a. CLAUDE.md फ़ाइल बनाना
CLAUDE.md एक विशेष फ़ाइल है जिसे Claude बातचीत शुरू होने पर अपने आप context में शामिल करता है
यह फ़ाइल निम्न चीज़ों को document करने के लिए आदर्श है:
- अक्सर इस्तेमाल होने वाले bash commands
- मुख्य files और utility functions
- code style guidelines
- tests चलाने का तरीका
- repository workflow (जैसे: branch naming, merge बनाम rebase)
- development environment setup (जैसे: pyenv का उपयोग करना है या नहीं, compatible compilers)
- उस project के exception behaviors या warnings
- अन्य जानकारी जो Claude को याद रखनी चाहिए
CLAUDE.md फ़ाइल पर format की कोई पाबंदी नहीं है, लेकिन इसे संक्षिप्त और पढ़ने में आसान रूप में लिखने की सलाह दी जाती है
उदाहरण:
# Bash commands
- npm run build: Build the project
- npm run typecheck: Run the typechecker
# Code style
- Use ES modules (import/export) syntax, not CommonJS (require)
- Destructure imports when possible (eg. import { foo } from 'bar')
# Workflow
- Be sure to typecheck when you’re done making a series of code changes
- Prefer running single tests, and not the whole test suite, for performance
CLAUDE.md फ़ाइल की location
Claude निम्न locations पर CLAUDE.md खोजकर उसे context में शामिल करता है:
- repo root या वह directory जहाँ से
claudeचलाया गया हो- इसे CLAUDE.md के रूप में save करके git में check in करने पर sessions और team के बीच साझा किया जा सकता है (अनुशंसित)
- personal settings के लिए इसे CLAUDE.local.md के रूप में save करके
.gitignoreमें रखा जा सकता है
- current directory की parent directories
- monorepo structure में उपयोगी (जैसे:
root/CLAUDE.mdऔरroot/foo/CLAUDE.mdदोनों का उपयोग संभव)
- monorepo structure में उपयोगी (जैसे:
- current directory की subdirectories
- उन directories के भीतर files पर काम करते समय यह अपने आप context में शामिल हो जाता है
- home directory (
~/.claude/CLAUDE.md)- सभी sessions पर globally लागू
/init command चलाने पर Claude अपने आप CLAUDE.md फ़ाइल बना देता है
b. CLAUDE.md फ़ाइल tuning
क्योंकि CLAUDE.md, Claude prompt के हिस्से के रूप में इस्तेमाल होती है, इसलिए इसे prompt की तरह बार-बार refine और optimize करना चाहिए
एक आम गलती है इसमें बहुत अधिक सामग्री जोड़ देना और उसके प्रभाव की जाँच न करना
- यह प्रयोगों से समझना महत्वपूर्ण है कि कौन-सी सामग्री model के response performance को बेहतर बनाती है
- आप सामग्री manually जोड़ सकते हैं, या
#key दबाकर Claude को निर्देश दे सकते हैं ताकि वह उसे अपने आप CLAUDE.md में शामिल करे - कई engineers commands, style guides आदि को real time में document करते हैं, और CLAUDE.md के बदलावों को commit में शामिल करके team के साथ साझा करते हैं
Anthropic में prompt improver के ज़रिए CLAUDE.md को refine किया जाता है, और
“IMPORTANT”, “YOU MUST” जैसे emphasis phrases जोड़कर response accuracy बढ़ाई जाती है
c. Claude की allowed tools list का management
Claude Code उन कामों के लिए जो system में बदलाव कर सकते हैं (जैसे file write, bash command execution, MCP tools का उपयोग), default रूप से user approval मांगता है
यह सुरक्षा के लिए एक conservative design है, और जिन tools को उपयोगकर्ता सुरक्षित मानता है उन्हें allowlist के ज़रिए पहले से approve किया जा सकता है
Allowed tools configure करने के तरीके
- Session के दौरान prompt आने पर "Always allow" चुनें
/allowed-toolscommand से tools जोड़ें/हटाएँ
उदाहरण:Edit→ file editing की अनुमतिBash(git commit:*)→ git commit की अनुमतिmcp__puppeteer__puppeteer_navigate→ Puppeteer MCP server navigation की अनुमति
.claude/settings.jsonया~/.claude.jsonको manually edit करें- team के साथ साझा करने के लिए पहले वाले को Git में check in करने की सिफारिश है
- session-specific CLI flag
--allowedToolsका उपयोग करें
d. GitHub उपयोग के लिए gh CLI install करना
Claude, gh CLI का उपयोग कर सकता है, इसलिए issue creation, PR writing, comments पढ़ना जैसे GitHub tasks को automate किया जा सकता है
अगर gh install न हो तब भी GitHub API या MCP server के ज़रिए उसका विकल्प इस्तेमाल किया जा सकता है
# 2. Claude को और अधिक tools देना
Claude को उपयोगकर्ता के shell environment तक access होता है, इसलिए उपयोगकर्ता द्वारा बनाए गए scripts और functions भी वैसे ही इस्तेमाल किए जा सकते हैं
साथ ही MCP या REST API के माध्यम से अधिक जटिल external tools के साथ integration भी संभव है
a. Bash tools के साथ उपयोग
Claude Code उपयोगकर्ता के bash environment को inherit करता है, इसलिए उसे पहले से installed utility tools तक access मिल जाता है
- सामान्य Unix tools या
ghCLI के बारे में Claude पहले से जानता है - लेकिन उपयोगकर्ता द्वारा बनाए गए custom bash tools के बारे में अलग से बताना पड़ता है
Claude को custom tools पहचानने के लिए यह करें:
- tool का नाम और usage examples Claude को स्पष्ट रूप से बताएँ
--helpoption के ज़रिए tool का उपयोग कैसे होता है यह देखने को कहें- अक्सर उपयोग होने वाले tools को CLAUDE.md में document करें
b. MCP के साथ उपयोग
Claude Code एक साथ MCP server और client दोनों की भूमिका निभाता है
Client के रूप में यह कई MCP servers से जुड़कर विभिन्न tools का उपयोग कर सकता है
MCP server tools को Claude से जोड़ने के तीन तरीके हैं:
- project settings में define करना (सिर्फ उसी directory में उपयोग योग्य)
- global settings के ज़रिए सभी projects में उपयोग योग्य बनाना
.mcp.jsonफ़ाइल को check in करना ताकि सहयोग कर रहे सभी developers तुरंत tools का उपयोग कर सकें- उदाहरण:
.mcp.jsonमें Puppeteer और Sentry servers दर्ज करने पर पूरी team उनका उपयोग कर सकती है
- उदाहरण:
MCP इस्तेमाल करते समय settings issues को debug करने के लिए Claude को --mcp-debug flag के साथ चलाना उपयोगी है
c. Custom slash commands
बार-बार दोहराए जाने वाले workflows (जैसे debugging, log analysis आदि) के लिए
.claude/commands folder में prompt templates को Markdown files के रूप में save किया जा सकता है
- Claude में
/टाइप करने पर auto-complete मेन्यू में संबंधित कमांड दिखाई देता है - git में commit करके टीम के सदस्यों के साथ साझा किया जा सकता है
पैरामीटर पास करना: $ARGUMENTS
slash कमांड में $ARGUMENTS शामिल करने पर कमांड चलाते समय दिए गए parameters अपने-आप insert किए जा सकते हैं
उदाहरण: GitHub issue का auto analysis और fix
Please analyze and fix the GitHub issue: $ARGUMENTS.
Follow these steps:
1. Use `gh issue view` to get the issue details
2. Understand the problem described in the issue
3. Search the codebase for relevant files
4. Implement the necessary changes to fix the issue
5. Write and run tests to verify the fix
6. Ensure code passes linting and type checking
7. Create a descriptive commit message
8. Push and create a PR
Remember to use the GitHub CLI (`gh`) for all GitHub-related tasks.
ऊपर की सामग्री को .claude/commands/fix-github-issue.md में सेव करने पर, इसे /project:fix-github-issue कमांड के रूप में इस्तेमाल किया जा सकता है
उदाहरण: /project:fix-github-issue 1234 → Claude #1234 issue को अपने-आप fix करने की कोशिश करेगा
अगर personal custom commands को ~/.claude/commands फ़ोल्डर में सेव किया जाए, तो वे सभी sessions में इस्तेमाल किए जा सकते हैं
# 3. सामान्य workflows का उपयोग
Claude Code किसी खास workflow को बाध्य नहीं करता, बल्कि उपयोगकर्ता को पूरी flexibility देता है
इसी flexibility के आधार पर, user community में सफलतापूर्वक स्थापित कई उपयोग पैटर्न मौजूद हैं
a. explore → plan → implement → commit
-
Claude से संबंधित files, images, URLs पढ़ने के लिए कहें
- उदाहरण: “लॉग प्रोसेस करने वाली फ़ाइल पढ़ो”, “logging.py पढ़ो”
- लेकिन साफ़ तौर पर कहें कि अभी coding न करे
- इस चरण में subagents का उपयोग बहुत प्रभावी होता है (समस्या जितनी जटिल हो, उतना अधिक फ़ायदेमंद)
-
Claude से समस्या हल करने की योजना बनाने के लिए कहें
- “think”, “think hard”, “ultrathink” जैसे keywords इस्तेमाल करने पर अधिक compute budget मिलता है
- अगर योजना उचित लगे, तो योजना को दस्तावेज़ में व्यवस्थित करें या GitHub issue के रूप में बनाएं, ताकि वापस लौटने के लिए एक reference point रहे
-
इसके बाद Claude से योजना के अनुसार code implement करने के लिए कहें
- implementation के दौरान भी उससे अपने परिणाम की वैधता खुद verify करने के लिए स्पष्ट रूप से कहा जा सकता है
-
अंत में परिणाम commit करने और PR बनाने का निर्देश दें
- ज़रूरत पड़ने पर README या CHANGELOG अपडेट करने का अनुरोध भी साथ किया जा सकता है
📌 इस flow में अगर चरण 1~2 छोड़ दिए जाएँ, तो Claude तुरंत coding शुरू कर देता है, इसलिए खासकर जटिल समस्याओं में planning चरण बहुत महत्वपूर्ण है
b. test लिखना → commit → code लिखना → iterate → commit (test-driven development)
यह तरीका Anthropic के अंदर अक्सर इस्तेमाल किया जाता है, और unit/integration/e2e tests वाले कामों के लिए उपयुक्त है
-
Claude से input/output मानदंडों के आधार पर tests लिखने के लिए कहें
- साफ़ बताएँ कि यह test-driven development है → ताकि वह functionality implement किए बिना सिर्फ tests लिखे
-
tests fail होते हैं या नहीं, यह जाँचने के लिए कहें
- निर्देश दें कि implementation न करे, सिर्फ tests चलाए
-
अगर tests संतोषजनक हों, तो commit करें
-
Claude से ऐसा code लिखने के लिए कहें जो tests पास कर दे
- स्पष्ट रूप से कहें कि tests में बदलाव न करे
- आम तौर पर कई बार दोहराने के बाद tests pass होते हैं
- subagents का उपयोग करके overfitting हो रही है या नहीं, यह verify करना भी प्रभावी है
-
जब सभी tests pass हो जाएँ, तो code commit करने को कहें
✅ Claude स्पष्ट targets (जैसे test cases, images आदि) होने पर सबसे अच्छा काम करता है
c. code लिखना → result screenshot देना → बार-बार सुधारना
- ऐसा environment सेट करें जहाँ browser screenshots अपने-आप उपलब्ध कराए जा सकें (जैसे Puppeteer MCP, iOS simulator आदि)
- visual mockup दें (image paste करना, path देना आदि)
- Claude से design implement करने के लिए कहें → result screenshot लें → फिर तुलना करके सुधार करने को कहें
- संतुष्ट होने पर commit करें
💡 Claude भी इंसानों की तरह 2~3 iterations के बाद काफ़ी बेहतर परिणाम देता है → visual feedback loop महत्वपूर्ण है
d. Safe YOLO mode
--dangerously-skip-permissionsoption के साथ सभी approval requests छोड़ दिए जाते हैं- Claude उपयोगकर्ता की मंज़ूरी के बिना पूरी तरह automated तरीके से काम करता है
⚠️ data loss, system damage, prompt injection का जोखिम मौजूद है → इसे केवल internet-blocked container में चलाने की सिफारिश की जाती है
→ उदाहरण implementation के लिए Docker Dev Container का उपयोग सुझाया जाता है
e. codebase Q&A
- किसी नए project में ढलने के दौरान, जैसे आप किसी सहकर्मी engineer से पूछते हैं, वैसे Claude से सवाल पूछ सकते हैं
- Claude codebase को explore करके खुद जवाब ढूँढता है
उदाहरण सवाल:
- logging कैसे काम करती है?
- नया API endpoint कैसे बनाऊँ?
foo.rsकी line 134 मेंasync moveक्या भूमिका निभाता है?CustomerOnboardingFlowImplकौन से edge cases संभालता है?foo()की जगहbar()क्यों call किया जाता है?baz.pyकी line 334 जैसा Java code कौन सा है?
📌 अलग prompt के बिना भी सिर्फ natural language सवालों से exploration संभव है
→ Anthropic में इस तरीके का उपयोग मुख्य onboarding tool के रूप में किया जा रहा है
f. Git integration
Claude नीचे दिए गए Git tasks को automate करने में अच्छा है:
- Git history खोजना:
- उदाहरण: "v1.2.3 में कौन से बदलाव शामिल थे?", "यह feature किसने बनाया?", "इस API की structure ऐसी क्यों है?"
- commit message लिखना:
- बदलावों और आसपास के context के आधार पर अपने-आप तैयार करना
- advanced Git tasks:
- files revert करना, rebase conflicts सुलझाना, patches की तुलना और merge करना आदि
g. GitHub integration
Claude Code GitHub से जुड़े कामों को काफ़ी हद तक automate कर सकता है:
- Pull Request बनाना:
prkeyword को पहचानता है, और बदलावों के आधार पर अपने-आप commit message बनाता है
- code review comments ठीक करना:
- सिर्फ "PR पर लगे comments ठीक कर दो" कहने से वह fix करके push कर सकता है
- build failures, lint errors ठीक करना
- issues को classify और organize करना:
- Claude से कहें, “open issues देखकर उन्हें व्यवस्थित कर दो”
💡 gh command याद रखने की ज़रूरत नहीं, फिर भी automated GitHub tasks संभव हैं
h. Jupyter Notebook पर काम
- Claude
.ipynbfiles को पढ़ और लिख सकता है, और images सहित output की व्याख्या भी कर सकता है - VS Code में Claude Code और notebook file को साथ-साथ खोलकर उपयोग करने की सलाह दी जाती है
अतिरिक्त सुविधाएँ:
- दूसरों के साथ साझा करने से पहले notebook को साफ़-सुथरा करने और visual improvement का अनुरोध किया जा सकता है
- “इसे देखने में अच्छा बना दो”, “visualization को और सुंदर कर दो” जैसी human-centric view optimization requests पर यह अच्छी तरह काम करता है
# 4. workflow optimization
नीचे दिए गए सुझाव सभी workflows पर समान रूप से लागू होने वाले optimization तरीके हैं
a. निर्देश specific लिखें
Claude Code में पहले प्रयास में सफलता की संभावना तब अधिक होती है जब निर्देश अधिक specific हों
अगर शुरुआत से ही बात स्पष्ट हो, तो बीच में सुधार करने की ज़रूरत कम पड़ती है
उदाहरण तुलना
- ❌
add tests for foo.py→ बहुत व्यापक
✅foo.py के लिए, लॉगआउट किए गए उपयोगकर्ता वाले केस को कवर करने वाला नया test case लिखें। mock का उपयोग न करें - ❌
why does ExecutionFactory have such a weird api?→ अस्पष्ट
✅ExecutionFactory की git history ट्रेस करके, यह API अपनी मौजूदा संरचना में क्यों बनाई गई, उसका सारांश दें - ❌
add a calendar widget→ implementation की दिशा स्पष्ट नहीं
✅होमपेज पर मौजूद मौजूदा widget implementation का विश्लेषण करें (जैसे: HotDogWidget.php), code और interface separation pattern को समझें, फिर उसी तरीके से ऐसा नया calendar widget implement करें जिसमें उपयोगकर्ता महीना चुन सके और year pages के बीच नेविगेट कर सके। बाहरी library के रूप में केवल वही चीज़ें अनुमत हैं जो मौजूदा project में पहले से इस्तेमाल हो रही हैं
Claude इरादे का अनुमान लगा सकता है, लेकिन मन नहीं पढ़ सकता → स्पष्टता ही सबसे महत्वपूर्ण है
b. इमेज देना
Claude images और diagrams को प्रोसेस करने में बहुत अच्छा है
इमेज देने के लिए ये तरीके इस्तेमाल किए जा सकते हैं:
- macOS में
cmd+ctrl+shift+4→ clipboard पर screenshot →ctrl+vसे paste करें (remote environment में संभव नहीं) - image file को drag and drop करें
- image file path दें
design mockup implementation, visual chart analysis जैसी चीज़ों में यह UI/data visualization के लिए बहुत उपयोगी है
अगर visual उपलब्ध न भी हो, तब भी यह स्पष्ट बताना मददगार है कि परिणाम की visual quality महत्वपूर्ण है या नहीं
c. काम करने वाली फाइलें बताना
अगर आप Claude को साफ़ तौर पर बता दें कि किन files को reference या modify करना है, तो काम की सटीकता बेहतर होती है
- Tab key autocomplete से file/folder path जल्दी भरा जा सकता है
d. Claude को URL देना
Claude को URL देने पर वह documentation या webpage को सीधे पढ़ सकता है
- उदाहरण: API docs link, design system page आदि
- उसी domain पर बार-बार access के लिए
/allowed-toolscommand से domain को whitelist में जोड़ने पर approval को छोड़ा जा सकता है
e. तेज़ी से और बार-बार दिशा बदलना (course redirection)
Shift + Tab दबाकर auto-accept mode में automation किया जा सकता है,
लेकिन आम तौर पर Claude के साथ सक्रिय रूप से सहयोग करते हुए दिशा समायोजित करना बेहतर परिणाम देता है
उपयोगी adjustment tools के 4 तरीके:
- पहले plan माँगें: implementation से पहले ज़रूर plan बनवाएँ, फिर पुष्टि के बाद आगे बढ़ें
- Escape key से तुरंत रोकें: कभी भी सोचने, file edit करने आदि के बीच रोक सकते हैं
- Escape दो बार दबाकर पिछला prompt edit करें: पिछले command को बदलकर नई दिशा में जा सकते हैं
- changes rollback करने को कहें: Claude से किए गए बदलाव वापस लेकर दूसरा approach आज़मा सकते हैं
कभी-कभी Claude एक बार में बिल्कुल सही समाधान दे देता है, लेकिन ऊपर के tools का उपयोग करने पर अधिक तेज़ और अधिक सटीक परिणाम मिल सकते हैं
f. /clear command से context reset करना
लंबे session चलने पर Claude की context window अनावश्यक जानकारी से भर सकती है, जिससे performance घट सकती है
→ हर काम के unit पर /clear से context reset करने की आदत सुझाई जाती है
g. checklist और scratchpad का उपयोग
जटिल कामों (जैसे code migration, बहुत सारी lint errors ठीक करना आदि) में,
Markdown file या GitHub issue को checklist की तरह इस्तेमाल करने से efficiency बढ़ती है
उदाहरण: lint errors हल करना
- Claude से lint command चलाने को कहें → error details को Markdown checklist format में व्यवस्थित करें
- हर item को एक-एक करके पूरा करें, पुष्टि करें, फिर check करें → उसके बाद अगले item पर जाएँ
इस तरीके से progress tracking और quality control दोनों साथ में किए जा सकते हैं
h. Claude को data देना
Claude को data देने के कई तरीके हैं:
- copy/paste (सबसे सामान्य तरीका)
- pipe input (उदाहरण:
cat foo.txt | claude)- logs, CSV, बड़े text के लिए उपयुक्त
- bash commands, MCP tools, या slash commands के ज़रिए सीधे data लाने को कहना
- file या URL पढ़ने का अनुरोध (images सहित)
वास्तविक काम में कई तरीकों का मिश्रित उपयोग सामान्य है
उदाहरण: logs को pipe से दें, और Claude से MCP tools का उपयोग करके अतिरिक्त context लाने को कहें
# 5. headless mode से infrastructure automation करना
Claude Code non-interactive environments (CI, pre-commit hooks, build scripts, automation आदि) के लिए headless mode को सपोर्ट करता है
-pflag के साथ prompt देकर headless mode चलाया जा सकता है--output-format stream-jsonoption से streaming JSON output इस्तेमाल किया जा सकता है
⚠️ headless mode sessions के बीच बना नहीं रहता, इसलिए इसे हर बार अलग से चलाना पड़ता है
a. Claude से issue auto-classification
headless mode GitHub event-आधारित automation triggers के लिए उपयुक्त है
उदाहरण: नया issue बनते ही उसका अपने-आप analysis और label classification करना
- वास्तव में Claude Code के public repository में भी इस feature का उपयोग करके नए issues पर अपने-आप labels लगाने की सुविधा लागू की गई है
b. Claude को linter की तरह उपयोग करना
Claude पारंपरिक lint tools से पकड़ना कठिन subjective code review को automate कर सकता है
उदाहरण:
- typos
- पुराने comments
- भ्रामक function/variable names
- non-intuitive code flow आदि
इससे static analysis tools से आगे जाकर code quality सुधारना संभव है
# 6. multi-Claude workflow से स्तर बढ़ाना
सिर्फ एक Claude का उपयोग करने से आगे बढ़कर, कई Claude instances को parallel में चलाने का तरीका बहुत शक्तिशाली है
जैसे कई engineers मिलकर काम करते हैं, वैसे Claude को बाँटकर काम देना efficiency और quality दोनों को बेहतर बना सकता है
a. एक Claude code लिखे, दूसरा Claude review करे
सबसे सरल और प्रभावी pattern:
- Claude 1: code लिखना
/clearया दूसरे terminal में Claude 2 चलाना → लिखे गए code का review- Claude 3 चलाना या फिर से
/clear→ code और review दोनों पढ़कर fixes लागू करना
या,
- Claude 1: tests लिखना
- Claude 2: tests pass कराने वाला code लिखना
❗ Claude instances के बीच अलग-अलग scratchpad share कराना, या
“यह Claude सिर्फ file A में लिखे, वह Claude सिर्फ B पढ़े” जैसे role separation भी सेट किए जा सकते हैं
📌 कई बार एक ही Claude की तुलना में काम का यह बँटवारा बेहतर परिणाम देता है
b. repository को कई बार checkout करना
Claude के काम पूरा करने का इंतज़ार करने के बजाय, कई Git checkout directories बनाकर parallel में काम किया जा सकता है
- 3~4 git checkouts अलग-अलग folders में बनाएँ
- हर folder को अलग terminal tab में खोलें
- हर Claude instance को अलग task दें
- tabs बदलते हुए progress देखें और approval/rejection करें
c. Git worktree का उपयोग
git worktree Git का ऐसा feature है जिसमें एक ही repo से कई branches को अलग-अलग directories में checkout किया जा सकता है
→ कई स्वतंत्र tasks को parallel में संभालने के लिए आदर्श
उदाहरण:
- एक Claude authentication system को refactor कर रहा हो
- दूसरा Claude अलग से data visualization component बना रहा हो
- दोनों एक-दूसरे में interfere नहीं करेंगे → parallelism अधिकतम
उपयोग का तरीका
- worktree बनाएँ:
git worktree add ../project-feature-a feature-a - Claude चलाएँ:
cd ../project-feature-a && claude - ज़रूरत के अनुसार दोहराएँ
टिप्स
- worktree names को consistent रखें
- हर terminal tab में एक worktree बनाए रखें
- अगर आप iTerm2 (Mac) user हैं, तो notifications सेट करने की सलाह दी जाती है
- IDE को भी हर worktree के हिसाब से अलग रखें
- काम पूरा होने के बाद cleanup:
git worktree remove ../project-feature-a
d. headless mode + custom automation structure
headless mode (claude -p) Claude Code को programmatically workflow में integrate करना संभव बनाता है
इसे Claude के अपने tools और system prompts के साथ जोड़कर नीचे दिए गए दो patterns का उपयोग किया जा सकता है
1. Fanning out: बड़े migration/analysis tasks को बाँटकर प्रोसेस करना
उदाहरण:
- Claude से task list बनाने के लिए script लिखने को कहें
→ उदाहरण: React से Vue में migrate किए जाने वाले 2,000 files की list बनाना - हर task को
claude -pके साथ चलाएँ
→ उदाहरण:
claude -p "migrate foo.py from React to Vue. When done, return OK or FAIL." --allowedTools Edit Bash(git commit:*) - performance optimize करने के लिए prompt को कई बार सुधारें
2. Pipelining: data/process pipeline का एकीकरण
- Claude के output को सीधे अगले command से connect करें:
claude -p "<your prompt>" --json | your_command - Claude के JSON output structure की वजह से automated processing के लिए सुविधाजनक
डिबगिंग टिप्स
- testing के दौरान
--verboseका उपयोग करके Claude के execution flow की जाँच करें - production में output साफ-सुथरा रखने के लिए verbose बंद रखने की सिफारिश
2 टिप्पणियां
खर्च लगभग कितना आएगा?
Hacker News टिप्पणियाँ
"ultrathink"फीचर दिलचस्प है"think"शब्द का उपयोग करके Claude का extended thinking mode सक्रिय किया जा सकता है"megathink"विकल्प भी हैयह हैरानी की बात है कि
"cost control"पर कोई सेक्शन नहीं हैCursor का काफ़ी इस्तेमाल करते समय कभी-कभी model ऐसी code changes कर देता है जो माँगी नहीं गई थीं
Claude Code को आज़माया, लेकिन लागत की वजह से Gemini AI पर स्विच कर लिया
Claude Code का प्रभावी उपयोग करने के लिए काफ़ी पैसा लगता है
Claude Sonnet और Gemini की cost-effectiveness पर व्यक्तिगत राय
कई checkout का उपयोग करना दिलचस्प है
Gemini के Claude Code और OpenAI के Codex के विकल्प के बारे में जिज्ञासा है
reugn/gemini-cliप्रोजेक्ट मिला, लेकिन Gemini Code Assist, VS Code तक सीमित हैमुख्य रूप से neovim में काम करते हैं, लेकिन boilerplate code लिखने के लिए Cursor खोलते हैं
लागत के डर से इसका उपयोग नहीं कर पाते