Claude Code: dasturchi va engineerlar uchun to'liq qo'llanma
O'rnatishdan boshlab MCP serverlar, custom skills, hooks va Agent SDK kabi advanced imkoniyatlargacha — Claude Code'ni jiddiy ishlatish uchun zarur bo'lgan hammasi bir joyda.
O'rnatishdan boshlab MCP serverlar, custom skills, hooks va Agent SDK kabi advanced imkoniyatlargacha — Claude Code'ni jiddiy ishlatish uchun zarur bo'lgan hammasi bir joyda.
Bu kitob Claude Code'ni jiddiy ishlatmoqchi bo'lgan dasturchilar uchun yozilgan: o'rnatishdan boshlab MCP, hooks va Agent SDK darajasigacha — qisqa va aniq.
Claude Code — bu Anthropic tomonidan yaratilgan terminal-asosidagi AI assistent. U sizning kompyuteringizda turib, fayllarni o'qiydi, o'zgartiradi, kod yozadi, testlarni ishga tushiradi, git buyruqlarini bajaradi va hatto butun feature'larni mustaqil ravishda implementatsiya qilishi mumkin. Lekin uning haqiqiy kuchi — bu uni qanday kengaytirish mumkinligida: hooks orqali avtomatlashtirish, MCP orqali tashqi xizmatlarga ulanish va custom skills/agents orqali maxsus workflow'larni qurishda.
Kitob bilingual yozilgan: tushuntirishlar o'zbek tilida, lekin barcha buyruqlar, fayl nomlari, frontmatter maydonlari va konfiguratsiya namunalari ingliz tilida — chunki Claude Code'ning rasmiy interfeysi ingliz tilida va siz aynan shu so'zlarni terminalingizga yozasiz.
Bu kitob siz uchun, agar siz dasturchi yoki engineer bo'lsangiz, terminalda ishlashga ko'nikkan bo'lsangiz va Claude Code'ni "chat oynachasi" emas, balki ishingizni tezlashtiradigan jiddiy asbob sifatida ko'rmoqchi bo'lsangiz.
Har bir bobda quyidagilar bor: nima ekanligi, qachon ishlatish, aniq misollar va samaradorlik maslahatlari. Kitob qisqa, lekin tig'iz — bekor so'z yo'q.
CLI tool sifatida Claude Code sizning fayllaringizni o'qiy oladi, shell ishga tushiradi va MCP orqali tashqi xizmatlarga ulanadi — Claude.ai web interfeysidan tubdan farq qiladi.
Claude Code — bu CLI tool. Siz uni terminalda claude deb ishga tushirasiz va u sizning current working directory'da ishlay boshlaydi. ChatGPT/Claude.ai dan farqli o'laroq, bu joyda Claude:
| Xususiyat | Claude.ai (web) | Claude Code (CLI) |
|---|---|---|
| Fayllarga to'g'ridan-to'g'ri kirish | Yo'q | Ha |
| Shell ishlatish | Yo'q | Ha |
| Sessiya saqlash | Cloud | Local (~/.claude/projects/) |
| MCP serverlar | Cheklangan | To'liq |
| Hooks/avtomatlashtirish | Yo'q | Ha |
| Custom subagentlar | Yo'q | Ha |
| Headless / scripting | Yo'q | Ha (claude -p) |
| IDE integratsiya | Yo'q | VS Code, JetBrains |
Claude Code'ni ishlating, qachonki: real codebase'da ishlasangiz, multi-file refactoring qilsangiz, testlar yozish/ishga tushirish kerak bo'lsa, CI/CD'ga AI qo'shsangiz yoki o'zingizning workflow'ingizni avtomatlashtirsangiz.
Claude.ai'ni ishlating, qachonki: tezda biror narsani so'rasangiz, fayl qo'shmasdan g'oya muhokama qilsangiz yoki mobil qurilmadan kirsangiz.
Native installer, autentifikatsiya, birinchi sessiya va loyiha xotirasini sozlovchi CLAUDE.md — kichik qadamlar bilan to'g'ri start.
Eng oson va tavsiya qilingan usul — native installer. Bu sizga avtomatik update'larni beradi va NodeJS o'rnatish talab qilmaydi.
curl -fsSL https://claude.ai/install.sh | bash
irm https://claude.ai/install.ps1 | iex
brew install --cask claude-code
claude --version
claude /doctor
/doctor buyrug'i installatsiya bilan bog'liq muammolarni topib beradi: PATH masalalari, auth holati, MCP server statuslari, hooks va sozlamalar ierarxiyasi.
Ikki yo'l mavjud:
1. Claude subscription (Pro / Max / Team) — agar sizda Claude.ai obunasi bo'lsa:
claude
# Birinchi marta ishga tushirganda /login ochiladi
2. API key (Anthropic Console) — pre-paid kreditlar bilan ishlatish uchun:
export ANTHROPIC_API_KEY="sk-ant-..."
claude
Korporativ foydalanuvchilar uchun: AWS Bedrock (CLAUDE_CODE_USE_BEDROCK=1), Google Vertex AI va Microsoft Foundry ham qo'llab-quvvatlanadi.
cd ~/projects/my-app
claude
Sessiya boshlandi. Endi o'z prompt'ingizni yozing. Misol:
> @src/auth/login.ts faylini o'qib, asosiy mantiqni tushuntir
E'tibor bering: @filename sintaksisi Claude'ga shu faylni darhol o'qishni buyuradi. Bu — tezroq va aniqroq, "u faylni o'qisin" deb yozishdan ko'ra.
Birinchi marta loyihada ishlaganda, quyidagi buyruqni bajaring:
/init
Bu buyruq CLAUDE.md faylini yaratadi. Bu fayl — Claude'ning loyihangiz haqidagi doimiy xotirasi. Har sessiyada Claude uni avtomatik o'qiydi va ko'rsatmalarga rioya qiladi.
Yaxshi CLAUDE.md'da quyidagilar bo'lishi kerak:
# Project: Acme Dashboard
## Tech stack
- Next.js 14, TypeScript, Tailwind CSS
- Postgres with Drizzle ORM
- Vitest for testing
## Code style
- Use ES modules, never CommonJS
- Destructure imports: `import { foo } from "bar"`
- 2-space indent, single quotes
- Functional React components only
## Commands
- `npm run dev` — start dev server
- `npm test` — run unit tests
- `npm run db:migrate` — apply migrations
## Workflow
- Always run `npm test` after editing files in `src/`
- Never commit migrations without `--down` script
- Use feature branches; PR titles in conventional commits format
## Gotchas
- `lib/legacy/*` is deprecated — don't add code there
- `src/api/*` requires auth middleware
CLAUDE.md ni qisqa va aniq tutish — sifatdan ham, tokendan ham yutadi. 200–500 so'z odatda yetarli. Loyiha kattalashganda, qism-qismlarga bo'lish va kerakli paytda @docs/architecture.md sifatida reference qilish samaraliroq.
| Fayl | Joyi | Maqsad |
|---|---|---|
CLAUDE.md | Loyiha root | Loyiha bo'yicha doimiy ko'rsatmalar (git'da) |
CLAUDE.local.md | Loyiha root | Faqat sizga (gitignore) |
~/.claude/CLAUDE.md | Home | Hamma loyihalar uchun |
.claude/settings.json | Loyiha | Loyiha sozlamalari (git'da) |
.claude/settings.local.json | Loyiha | Mahalliy override (gitignore) |
~/.claude/settings.json | Home | Foydalanuvchi sozlamalari |
.claude/skills/ | Loyiha | Custom skills |
.claude/agents/ | Loyiha | Custom subagents |
.claude/commands/ | Loyiha | Legacy slash commands |
.mcp.json | Loyiha root | MCP server konfiguratsiyasi |
Bir tipik sessiya qanday boshlanadi va tugaydi, qanday tool'lar mavjud va parallel ishlatish nima uchun samarali — boshqaruvning asoslari.
Bir tipik sessiya quyidagicha kechadi:
claude deb ishga tushirasizCLAUDE.md, sozlamalar, hook'lar va skill metadata'sini yuklaydiCtrl+D//exit bosganda transcript ~/.claude/projects/ ga saqlanadiclaude # Interaktiv sessiya
claude "task here" # Boshlang'ich prompt bilan
claude -p "query" # Print mode (javob berib chiqib ketadi)
claude -c # Oxirgi sessiyani davom ettirish
claude -r # Sessiyani tanlab davom ettirish
claude --resume my-feature # Nomi bo'yicha
claude --fork-session # Yangi shoxga o'tib (tarix saqlanadi)
claude -n "feature-auth" # Sessiyaga nom berish
claude --add-dir /path/to/dir # Boshqa katalogga ham kirish
claude update # Yangilash
Claude Code'da quyidagi asosiy tool'lar mavjud:
| Tool | Nima qiladi |
|---|---|
Read | Faylni o'qiydi (text, image, PDF) |
Edit | Fayldagi aniq matnni almashtiradi |
Write | Yangi fayl yozadi yoki to'liq qayta yozadi |
Glob | Fayllarni pattern bo'yicha topadi (**/*.ts) |
Grep | Ripgrep'ga asoslangan tezkor matn qidiruvi |
Bash | Shell buyruqlarini bajaradi |
WebFetch | Bitta URL'ni o'qiydi |
WebSearch | Internet qidiruvi |
Agent (Task) | Subagent ishga tushiradi |
Skill | Skill'ni yuklab ishga tushiradi |
NotebookEdit | Jupyter notebook'ni tahrir qiladi |
Claude Code parallel tool execution'ni qo'llab-quvvatlaydi. Bu — eng katta samaradorlik trick'laridan biri. Misol uchun, agar Claude bir nechta mustaqil narsani o'qishi kerak bo'lsa, u ularni parallel chaqiradi.
Foydalanuvchi sifatida sizning vazifangiz — promptni shunday tuzishki, parallel ish iloji bo'lsin:
YOMON: "src/auth.ts ni o'qib, keyin src/db.ts ni o'qib, keyin..."
YAXSHI: "Quyidagi fayllarni parallel o'qib, har birining maqsadini ayt:
src/auth.ts, src/db.ts, src/api/users.ts, src/api/posts.ts"
@README.md # Faylni darhol o'qiydi
@src/auth/login.ts # Nisbiy yo'l
@/absolute/path/to/file # Absolyut yo'l
Multiple fayllarni bir promptda eslab o'tishingiz mumkin. Claude ularni parallel o'qiydi.
Screenshot'larni to'g'ridan-to'g'ri terminalga drag-drop qiling yoki paste (Cmd+V / Ctrl+V) qiling. Claude rasmni ko'radi va shu asosida ishlay oladi.
Tipik foydalanish:
Shell pipeline orqali ham input bera olasiz:
cat error.log | claude -p "bu xatoni tahlil qilib, root cause'ini ayt"
git diff | claude -p "bu o'zgarishlar uchun PR description yoz"
gh pr view 42 --comments | claude -p "PR'ga umumiy javob tayyorla"
Claude'ning eng cheklangan resursi — kontekst oynasi. Uni samarali boshqarish professional foydalanuvchining asosiy ko'nikmasi.
Modellarning aksariyatida bu 200,000 token. Bu juda katta ko'rinadi, lekin amaliyotda u tezda to'lib qoladi: katta fayllar, uzun shell output'lar va davomli muloqot.
Har bir sessiyada quyidagilar kontekst joyini egallaydi:
/context # Kim qancha joy egallayapti — ko'rish
/compact # Tarixni qisqartirish (avtomatik xulosa qiladi)
/compact focus on auth # Maxsus mavzuga e'tibor berib qisqartirish
/clear # Hammasini tozalash (yangi sessiya kabi)
/resume # Eski checkpoint'dan davom ettirish
Esc Esc # Rewind menu — orqaga qaytish
/clear — agar siz yangi, mustaqil vazifaga o'tayotgan bo'lsangiz. Misol: Auth feature'ini tugatdingiz, endi billing'ga o'tyapsiz. Eski kontekst yangi vazifaga foyda bermaydi va shovqin keltiradi.
/compact — agar siz hozirgi vazifani davom ettirayotgan bo'lsangiz, lekin tarix juda uzayib ketgan. Claude eski tool natijalarini xulosalaydi, lekin asosiy qarorlarni va kod o'zgarishlarini eslab qoladi.
Aggressivlik bilan /clear ishlating. Yangi mantiqiy vazifa — yangi sessiya. Bu nafaqat tezlik, balki sifatga ham foyda — Claude eski kontekstdagi noto'g'ri taxminlardan qutuladi.
Kontekst to'lganda Claude avtomatik ravishda compaction qiladi. Bu jarayon:
Lekin bu — hech qachon ideal emas. Iloji boricha auto-compaction'ga yetib bormaslik kerak. Yo'llari:
limit va offset parametrlardan foydalaning, butun katta faylni o'qishdan saqlaningHar bir sessiya local'da JSONL fayl sifatida saqlanadi: ~/.claude/projects/<encoded-path>/sessions/. Bu sizga bir necha kundan keyin ham qaytib kelish imkonini beradi.
claude -n "auth-refactor" # Sessiyaga nom berish
# ... ish qiling, exit ...
# Bir hafta o'tdi
claude --resume auth-refactor # Tarix bilan davom etish
Ham foydali: --fork-session — mavjud sessiyani ko'chirib yangi shoxda boshlash, eski sessiya saqlanadi. Bu — "agar X qilsam-chi?" eksperimentlari uchun.
Sessiyada ikki marta Esc bosing — checkpoint menu ochiladi. U yerdan siz quyidagilarni bajarishingiz mumkin:
Bu — "Claude noto'g'ri yo'ldan ketdi" holatlari uchun ajoyib qo'l qurol.
Slash buyruqlari — Claude'ga maxsus instruksiyalar berishning eng tezkor usuli. Sessiya davomida promptga / bilan boshlab teriladi.
| Buyruq | Maqsad |
|---|---|
/help | Mavjud buyruqlar ro'yxati |
/clear | Kontekstni tozalash |
/compact [focus] | Tarixni xulosaga aylantirish |
/context | Kontekst hajmini ko'rsatish |
/init | CLAUDE.md generatsiya qilish |
/review | Pull request'ni ko'rib chiqish |
/security-review | Pending o'zgarishlarning xavfsizlik auditi |
/model | Modelni almashtirish (Opus / Sonnet / Haiku) |
/agents | Subagentlarni boshqarish |
/mcp | MCP serverlarni ko'rish/qo'shish |
/plugin | Plugin'larni boshqarish |
/reload-plugins | Pluginlarni qayta yuklash (in-session) |
/hooks | Konfiguratsiya qilingan hook'lar |
/permissions | Ruxsat qoidalari |
/config | Sozlamalar UI |
/cost | Token va xarajat statistikasi |
/memory | Avtomatik xotirani ko'rish |
/status | Auth statusi |
/login / /logout | Auth boshqaruvi |
/doctor | O'rnatish diagnostikasi |
/bug / /feedback | Bug yoki feedback yuborish |
/rename "name" | Sessiyani qayta nomlash |
/rewind | Checkpoint menyu (Esc Esc bilan ham) |
/resume | Eski sessiyaga qaytish |
/think ... /ultrathink | Kuchaytirilgan fikrlash rejimlari |
/upgrade | So'nggi versiyaga o'tish |
Claude'ga "ko'proq vaqt o'ylash" buyurish mumkin. Bu murakkab vazifalarda ajoyib ishlaydi:
| Modus | Qachon ishlatish |
|---|---|
/think | Oddiy fikrlash — oz xarajat |
/think hard | O'rta murakkablikdagi muammo |
/think harder | Murakkab refactor, debug, dizayn |
/ultrathink | Eng murakkab masalalar |
Yoki promptingiz ichida shunchaki "think hard about this" deb yozsangiz ham ishlaydi.
Thinking mode'lar ko'p token sarflaydi (va shu bilan ko'p vaqt). Oddiy "fix this typo" uchun ishlatmang. Lekin "this race condition only happens in production, here's the trace" uchun — aynan kerak.
Shift+Tab'ni ikki marta bosing — siz "plan mode"'ga o'tasiz. Bu rejimda Claude:
Bu — xavfli yoki katta o'zgarishlar oldidan ajoyib qadam. "Avval o'ylab ko'raylik, keyin qilamiz."
Shift+Tab bir marta bosish — permission mode aylanadi:
| Mode | Xulq-atvor |
|---|---|
default | Har xavfli amal uchun ruxsat so'raydi |
acceptEdits | Fayl tahrirlarini avtomatik tasdiqlaydi, shell uchun so'raydi |
plan | Read-only, hech narsa qilmaydi |
auto | Avtomatik — classifier xavfli amallarni bloklar |
bypassPermissions | Hech narsa so'ramaydi (xavfli) |
CLI orqali ham:
claude --permission-mode plan
claude --permission-mode acceptEdits
Skill — Claude'ga "ma'lum vaziyatda quyidagicha ishla" deb aytadigan markdown fayl. Avtomatik yuklanadi, kontekstni asramaydi, dasturlash ko'nikmasi talab qilmaydi.
| Daraja | Yo'l | Qamrov |
|---|---|---|
| Foydalanuvchi | ~/.claude/skills/<name>/SKILL.md | Hamma loyihalar |
| Loyiha | .claude/skills/<name>/SKILL.md | Faqat shu loyiha |
| Plugin | <plugin>/skills/<name>/SKILL.md | Plugin yoqilganda |
Skill papkasi quyidagicha ko'rinadi:
my-skill/
├── SKILL.md (asosiy — majburiy)
├── reference.md (qo'shimcha — ixtiyoriy)
├── examples.md (qo'shimcha)
└── scripts/
└── helper.sh (executable)
---
name: pr-summarizer
description: Use when the user asks for a PR summary or wants to describe changes
in a pull request. Generates a concise summary based on git diff.
allowed-tools: Bash Read Grep
argument-hint: [pr-number]
model: claude-sonnet-4-6
---
# PR Summarizer
Goal: produce a 3-5 bullet PR description from the current diff.
## Steps
1. Run `gh pr diff $1` (or `git diff main...HEAD` if no PR yet)
2. Identify: new features, bug fixes, refactors, breaking changes
3. Output as markdown with headings: Summary, Changes, Test plan
## Style
- Concise, no marketing language
- Bullet points, not paragraphs
- Mention any DB migrations or breaking API changes
| Maydon | Maqsad |
|---|---|
name | Skill nomi (lowercase, defislar) |
description | Qachon Claude bu skill'ni o'zi tanlashi kerakligi |
when_to_use | Qo'shimcha trigger tushuntirish |
argument-hint | Argument autocomplete |
allowed-tools | Faqat shu tool'lar — oldindan tasdiqlangan |
disable-model-invocation | Auto-trigger'ni o'chirish |
user-invocable | Slash menyusida ko'rinishi (default true) |
model | Boshqa modelga o'tish |
effort | low / medium / high / max |
context | fork — subagent'da bajarish |
agent | Qaysi subagent (Explore, Plan, custom) |
paths | Faqat shu fayllar uchun (glob) |
shell | bash yoki powershell |
hooks | Skill-scoped hooks |
Skill ichida argument'lardan foydalanish:
$ARGUMENTS # Hammasi bir string
$1, $2, $3 # Pozitsiyaga ko'ra
${CLAUDE_SESSION_ID} # Sessiya ID
${CLAUDE_SKILL_DIR} # Skill papkasi yo'li
Backtick bilan boshlanuvchi ! buyruqlar Claude promptni ko'rmasdan oldin shell'da bajariladi va ularning natijasi promptga qo'shiladi:
---
name: weekly-standup
---
Joriy git holati: !`git log --since="1 week ago" --oneline`
Yopilgan PR'lar: !`gh pr list --state merged --search "merged:>$(date -v-7d +%Y-%m-%d)"`
Bu ma'lumotlardan foydalanib, haftalik standup uchun 3 nuqtali xulosa yoz.
reference.md ga ajrating va undan reference qiling.Eski format hali ham ishlaydi:
.claude/commands/test-changed.md
# Test changed files
Run tests for files changed in the last commit.
```!
git diff --name-only HEAD~1 | grep -E '\.(ts|tsx|js)$' | xargs npm test --
```
Lekin yangi loyihalarda — skills'ni tanlang. Skills moslashuvchanroq, plugin'lar bilan yaxshi ishlaydi va subagent'larga yuborish imkoni bor.
Hooks — bu Claude Code'ning lifecycle event'larida avtomatik ishga tushadigan skript yoki webhook'lar. Sizdan oldin va sizdan keyin shovqinsiz ishlaydigan ko'mak.
Ular sizga quyidagi imkoniyatlarni beradi:
prettier ishga tushirish| Event | Qachon |
|---|---|
SessionStart | Sessiya boshlanganda (startup/resume/clear/compact) |
SessionEnd | Sessiya tugaganda |
UserPromptSubmit | Foydalanuvchi prompt yuborganda (block qila oladi) |
PreToolUse | Tool bajarilishidan oldin (block / modify / approve) |
PostToolUse | Tool muvaffaqiyatli bajarilgandan keyin |
PostToolUseFailure | Tool xato bilan tugagandan keyin |
Stop | Claude javob berishni tugatganida |
SubagentStart / SubagentStop | Subagent boshlanishi/tugashi |
PreCompact / PostCompact | Kontekst compaction atrofida |
Notification | Notifikatsiya (permission so'rov va h.k.) |
FileChanged | Watched fayl o'zgardi |
Hooks settings.json ichida belgilanadi (loyiha yoki user darajasida):
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "npx prettier --write $CLAUDE_FILE_PATH"
}
]
}
],
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "/usr/local/bin/safety-check.sh"
}
]
}
],
"SessionStart": [
{
"matcher": "startup|resume",
"hooks": [
{
"type": "command",
"command": "git status --short && git log -5 --oneline"
}
]
}
]
}
}
1. Command — shell skript. JSON stdin'da keladi.
{ "type": "command", "command": "/path/to/script.sh", "timeout": 30 }
2. HTTP — webhook'ga POST.
{
"type": "http",
"url": "http://localhost:8080/webhook",
"headers": { "Authorization": "Bearer $TOKEN" }
}
3. Prompt — LLM input'ni baholaydi.
{
"type": "prompt",
"prompt": "Is this command safe? $ARGUMENTS",
"model": "haiku"
}
4. Agent — subagent ishga tushiradi.
{
"type": "agent",
"prompt": "Verify migration safety: $ARGUMENTS"
}
Hook script'i exit code orqali Claude'ga signal beradi:
| Exit code | Ma'no |
|---|---|
| 0 | OK — Claude davom etadi |
| 2 | Bloklash — tool bajarilmaydi |
| boshqa | Non-blocking xato (stderr ko'rsatiladi) |
Yana boy nazorat — JSON output orqali:
{
"continue": true,
"stopReason": "...",
"suppressOutput": false,
"systemMessage": "Claude'ga ko'rsatiladigan xabar",
"hookSpecificOutput": {
"hookEventName": "PreToolUse",
"additionalContext": "Tool ishlatilmasdan oldin shu narsalarni eslang...",
"permissionDecision": "allow|deny|ask|defer"
}
}
{
"PostToolUse": [{
"matcher": "Edit|Write",
"hooks": [{
"type": "command",
"command": "if echo \"$CLAUDE_FILE_PATH\" | grep -E '\\.(ts|tsx)$'; then npx eslint --fix \"$CLAUDE_FILE_PATH\"; fi"
}]
}]
}
#!/bin/bash
INPUT=$(cat)
COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command')
if echo "$COMMAND" | grep -qE 'rm\s+-rf\s+/'; then
echo "Blocked: rm -rf / is forbidden" >&2
exit 2
fi
exit 0
{
"Stop": [{
"hooks": [{
"type": "http",
"url": "https://hooks.slack.com/services/...",
"headers": { "Content-Type": "application/json" }
}]
}]
}
Hook'lar — bu sizning kompyuteringizda ishlaydigan kod. Untrusted source'dan kelgan hook konfiguratsiyalarini hech qachon o'rnatmang. Plugin o'rnatishdan oldin hooks/ papkasini ko'rib chiqing.
Barcha hook'larni vaqtincha o'chirish:
{ "disableAllHooks": true }
MCP (Model Context Protocol) — AI assistentni tashqi servislarga ulash uchun ochiq standart. GitHub, Notion, Linear, Slack, Postgres va yuzlab boshqa xizmatlarga schema'siga ega tool'lar sifatida kirish.
MCP bo'lmaganda, har bir integratsiya uchun siz Bash orqali curl yozishingiz kerak edi. MCP esa ularni type-safe, schema'siga ega tool'larga aylantiradi.
claude mcp add # Interaktiv setup
claude mcp add notion # Nomi bo'yicha
claude mcp add ./mcp-config.json # Fayldan
/mcp # Joriy serverlarni ko'rish
Loyiha root'ida .mcp.json joylashadi (jamoaviy ulashish uchun git'ga commit qilinadi):
{
"mcpServers": {
"github": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "$GITHUB_TOKEN"
}
},
"postgres": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://localhost/mydb"]
},
"linear": {
"type": "http",
"url": "https://mcp.linear.app/sse",
"headers": { "Authorization": "Bearer $LINEAR_TOKEN" }
}
}
}
| Transport | Qachon |
|---|---|
stdio | Local server, child process sifatida |
sse | Server-Sent Events — remote server |
http | Standard HTTP — remote |
Bir marta server qo'shilgach, uning tool'lari Claude'ga avtomatik ko'rinadi. Ularning nomlari mcp__<server>__<tool> formatida bo'ladi.
Misol: mcp__github__create_pull_request, mcp__postgres__query.
Foydalanuvchi sifatida siz oddiy tarzda yozasiz: "Create a GitHub PR with title X". Claude o'zi to'g'ri MCP tool'ni topadi va chaqiradi.
Ba'zi MCP serverlar nafaqat tool, balki resurslar ham taqdim etadi (masalan, Notion sahifasi yoki database jadvali). Ularni @ bilan reference qilish mumkin:
@notion:page-id-here # Notion sahifani kontekstga olib kirish
@github:repo:owner/name # GitHub repo metadata
Ba'zi serverlar oldindan tayyorlangan promptlar (slash buyruqlari) ham taqdim etadi:
/mcp__github__create_issue
/mcp__linear__triage_inbox
| Server | Nima beradi |
|---|---|
| github | Repo, issue, PR, code search |
| postgres / sqlite | SQL query, schema introspection |
| notion | Sahifa o'qish/yozish, database, search |
| linear / asana / jira | Issue/task management |
| slack | Kanal o'qish, xabar yuborish |
| filesystem | Sandboxed fayl operatsiyalari |
| browser / puppeteer | Headless brauzer (web scraping, e2e) |
| memory | Long-term xotira |
| sentry | Error monitoring |
{
"permissions": {
"rules": [
"mcp__github__*", // GitHub'ning hammasi ruxsat
"!mcp__github__delete_repository", // lekin delete'ni ta'qiqlash
"mcp__postgres__query" // faqat select query
]
}
}
Plugin — skills, commands, agents, hooks va MCP serverlarning birgalikda paketlangan to'plami. Yagona install bilan o'rnatiladi va hammasi ishlay boshlaydi.
my-plugin/
├── .claude-plugin/
│ └── plugin.json (manifest)
├── skills/
│ └── my-skill/SKILL.md
├── agents/
│ └── reviewer.md
├── hooks/
│ └── hooks.json
├── .mcp.json
├── settings.json (default sozlamalar)
└── README.md
{
"name": "my-plugin",
"description": "What this plugin does",
"version": "1.0.0",
"author": { "name": "You", "email": "you@example.com" },
"homepage": "https://github.com/you/my-plugin",
"repository": "https://github.com/you/my-plugin",
"license": "MIT",
"keywords": ["code-review", "ci"]
}
/plugin browse # Marketplace'ni ko'rish
/plugin install <plugin-name> # Marketplace'dan
/plugin install ./local-plugin # Local papkadan
claude --plugin-dir ./my-plugin # Faqat shu sessiyaga
/plugin list # O'rnatilganlar
/reload-plugins # Hot-reload (rivojlantirish vaqtida)
Plugin ichidagi skills avtomatik ravishda namespace oladi:
/my-plugin:my-skill
Bu — ikki plugin bir xil nomli skill'ga ega bo'lishini oldini oladi.
Jamoangiz uchun ichki plugin marketplace yaratish mumkin. Bu — oddiy git repo + marketplace.json fayli:
{
"name": "acme-internal",
"plugins": [
{ "name": "deploy-helpers", "url": "https://github.com/acme/deploy-helpers" },
{ "name": "db-tools", "url": "https://github.com/acme/db-tools" }
]
}
Keyin har kim:
/plugin add-marketplace https://github.com/acme/marketplace
my-plugin/.claude-plugin/plugin.json yaratingclaude --plugin-dir ./my-plugin/reload-pluginsSubagent — maxsus rol yoki vazifa uchun mo'ljallangan, izolatsiyalangan kontekstga ega Claude instance'i. Asosiy Claude ularni Task / Agent tool orqali chaqiradi.
.claude/agents/security-reviewer.md:
---
name: security-reviewer
description: Reviews code for security vulnerabilities. Use proactively
when reviewing PRs, analyzing untrusted input handling, or auditing
authentication and authorization code.
tools: Read Grep Glob Bash
model: claude-opus-4-6
---
You are a senior application security engineer. Your job is to review code
for security vulnerabilities, especially:
1. Injection vulnerabilities (SQL, command, XSS, SSRF)
2. Authentication and authorization flaws
3. Hardcoded secrets, weak crypto, insecure randomness
4. Insecure deserialization, path traversal
5. Race conditions in security-relevant code
For each issue found, output:
- Severity: CRITICAL | HIGH | MEDIUM | LOW
- File and line
- Vulnerability class (e.g., "SQL injection")
- Why it's a problem
- Concrete fix
If no issues, say so plainly. Don't invent issues.
| Maydon | Ma'nosi |
|---|---|
name | Agent nomi |
description | Qachon delegatsiya qilish (Claude shu asosida tanlaydi) |
tools | Mavjud tool'lar (probel yoki YAML list) |
model | Model override |
system-prompt | Inline system prompt (frontmatter dan keyin asosiy matn ham mumkin) |
can-invoke-subagents | Subagent'lar yana subagent ishga tushira oladimi |
preload-skills | Boshlanishida darhol yuklanadigan skill'lar |
skip-claude-md | CLAUDE.md ni o'qimasin |
isolation | worktree — git worktree'da ishlaydi |
Asosiy suhbatda:
"Use the security-reviewer agent to audit src/auth/"
"Spawn three parallel agents to investigate the bug, test fixes, and update docs"
Yoki Claude o'zi description'ga qarab, vazifaga mos agent'ni avtomatik tanlaydi.
Skill ichidan chaqirish:
---
name: deep-research
context: fork
agent: Explore
---
Research the following topic thoroughly: $ARGUMENTS
Eksperimental yoki risky o'zgarishlar uchun:
---
name: experimental-refactor
isolation: worktree
---
Bu agent .claude/worktrees/experimental-refactor nomli alohida git worktree'da ishlaydi. Asosiy ish daraxtingiz daxlsiz qoladi. Agar agent muvaffaqiyatli ishlasa, siz natijani branch sifatida olib o'tasiz; aks holda — o'chirib tashlaysiz.
Eng kuchli pattern: bir vaqtning o'zida bir nechta mustaqil agent ishga tushirish.
"Spawn the following in parallel:
- 'researcher' agent: investigate similar bugs in the codebase
- 'tester' agent: write a failing test that reproduces the bug
- 'docs' agent: find and read related documentation
Then I'll synthesize the results."
Claude bularning hammasini bir xabarda chaqiradi va parallel ishlaydi.
| Agent | Maqsad |
|---|---|
| general-purpose | Universal — barcha tool'lar bilan |
| Explore | Codebase'ni tezda o'rganish (read-only) |
| Plan | Implementation plani tuzish |
| statusline-setup | Status line sozlash |
Agent SDK — Claude Code'ning programmatic interface'i. CI/CD pipeline, web app backend, custom CLI tool — Claude'ning tool-using qobiliyatini o'z dasturlaringizga olib kelish.
@anthropic-ai/claude-agent-sdkclaude-agent-sdkEng oddiy "SDK" — bu shunchaki claude -p:
claude -p "Run the test suite, fix any failures, return a summary" \
--output-format json \
--max-turns 20 \
--max-budget-usd 5.00
Bu buyruq interactive sessiyasiz ishlaydi va natijani JSON sifatida qaytaradi. Ideal CI/CD uchun.
| Format | Ishlatish |
|---|---|
text | Oddiy matn (default) |
json | Yagona JSON object — tugagach |
stream-json | Streaming JSON event'lar — real-time |
claude -p "task" \
--allowedTools "Read Grep Bash(npm test)" \
--disallowedTools "Edit Write" \
--permission-mode auto
import { query } from "@anthropic-ai/claude-agent-sdk";
for await (const event of query({
prompt: "Refactor src/auth/ to use the new JWT library",
options: {
cwd: "/path/to/project",
allowedTools: ["Read", "Edit", "Write", "Bash"],
permissionMode: "acceptEdits",
maxTurns: 30,
model: "claude-sonnet-4-6",
},
})) {
if (event.type === "text") {
console.log(event.text);
} else if (event.type === "tool_use") {
console.log("Tool:", event.name);
} else if (event.type === "result") {
console.log("Done. Cost:", event.usage.total_cost_usd);
}
}
from claude_agent_sdk import query, ClaudeAgentOptions
options = ClaudeAgentOptions(
cwd="/path/to/project",
allowed_tools=["Read", "Edit", "Write", "Bash"],
permission_mode="acceptEdits",
max_turns=30,
)
async for event in query(
prompt="Add tests for src/utils/format.ts",
options=options,
):
print(event)
claude -p "task" \
--system-prompt "You are a Python expert. Write idiomatic, type-hinted code." \
--append-system-prompt "Always use ruff for linting."
Yoki fayldan:
claude -p "task" --system-prompt-file ./prompts/expert.txt
SDK'da o'z tool'laringizni qo'shish — bu MCP server yozish demakdir. Eng oddiyi:
// my-tools.mcp.ts
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server({ name: "my-tools", version: "1.0.0" });
server.setRequestHandler("tools/list", async () => ({
tools: [{
name: "send_email",
description: "Send an email",
inputSchema: {
type: "object",
properties: {
to: { type: "string" },
subject: { type: "string" },
body: { type: "string" }
}
}
}]
}));
server.setRequestHandler("tools/call", async (req) => {
if (req.params.name === "send_email") {
// Send email logic
return { content: [{ type: "text", text: "Email sent" }] };
}
});
const transport = new StdioServerTransport();
await server.connect(transport);
Va keyin .mcp.json'da ro'yxatga olasiz.
Sozlamalar ierarxiyasi, permission qoidalari va environment variables — Claude qaysi tool'larni qachon ishlatishini boshqarish.
Sozlamalar bir nechta darajada bo'lishi mumkin. Pastdagilar yuqoridagilarni qayta belgilaydi (override):
~/.claude/settings.json.claude/settings.json (git'da).claude/settings.local.json (gitignore){
"model": "claude-sonnet-4-6",
"effort": "medium",
"defaultMode": "acceptEdits",
"permissions": {
"default": "ask",
"rules": [
"Read",
"Glob",
"Grep",
"Bash(npm test)",
"Bash(npm run *)",
"Bash(git status)",
"Bash(git diff *)",
"Bash(git log *)",
"Edit(src/**)",
"Write(src/**)",
"!Bash(rm *)",
"!Bash(curl *)",
"mcp__github__list_*",
"mcp__github__get_*"
]
},
"env": {
"NODE_ENV": "development"
},
"statusLine": "fancy",
"hooks": { /* ... */ }
}
| Pattern | Ma'no |
|---|---|
Read | Hamma o'qishlarga ruxsat |
Edit(src/**) | Faqat src ichidagi fayllarni tahrirlash |
Bash(npm *) | npm bilan boshlanuvchi buyruqlar |
Bash(git status) | Aniq bitta buyruq |
!Bash(rm *) | rm'ga ta'qiq |
mcp__github__* | GitHub MCP ning hammasi |
Skill(deploy) | Faqat shu skill'ga ruxsat |
| Mode | Xulq-atvor |
|---|---|
default | Har xavfli amal uchun so'raydi |
acceptEdits | Edit/Write avtomatik, shell uchun so'raydi |
plan | Read-only |
auto | Classifier blocks risky |
bypassPermissions | Hech narsa so'ramaydi |
| Variable | Maqsad |
|---|---|
ANTHROPIC_API_KEY | API key |
ANTHROPIC_MODEL | Default model override |
CLAUDE_CODE_USE_BEDROCK | AWS Bedrock'ga o'tish |
CLAUDE_CODE_USE_VERTEX | Google Vertex AI |
CLAUDE_CODE_DEBUG_LOGS_DIR | Debug log papkasi |
NODE_EXTRA_CA_CERTS | Korporativ CA sertifikatlari |
HTTP_PROXY / HTTPS_PROXY | Proxy sozlamalari |
Status line — bu sessiya pastida ko'rinadigan info qatori. /statusline-setup agenti uni sozlashga yordam beradi. Misol uchun, branch nomi, model, joriy xarajat ko'rsatiladi.
VS Code va JetBrains uchun rasmiy plugin'lar, terminal integratsiyasi va vim mode — Claude Code'ni tabiiy ravishda ish muhitiga olib kirish.
O'rnatish:
code --install-extension anthropic.claude-code
Yoki Marketplace'dan "Claude Code" qidiring.
Imkoniyatlar:
Marketplace: "Claude Code" plugin'ini qidiring va o'rnating. Featurelari VS Code'ga o'xshash.
Quyidagi terminal'lar Claude Code uchun yaxshi ishlaydi:
Sessiyada /vim buyrug'i prompt input'ga vim keybinding'larni qo'shadi.
Aniq prompt, kontekst injection, plan mode, parallel ishlar, model tanlash — Claude Code'dan eng ko'p foyda olish bo'yicha amaliy maslahatlar.
YOMON: "Login'ni yaxshilang."
YAXSHI: "src/auth/login.ts da, password validation regex'ni RFC 5321 standard'ga keltiring. Test qo'shing — valid va invalid inputs uchun. Existing test style'iga rioya qiling (bkz: src/auth/__tests__/email.test.ts)."
Aniq prompt — aniq natija. Claude taxmin qilishni yaxshi ko'rmaydi; agar siz aytib bersangiz, u to'g'ri qiladi.
Claude'ga reference fayllarni darhol bering:
"Implement a new payment provider in @src/payments/providers/.
Follow the same pattern as @src/payments/providers/stripe.ts.
Add tests like @src/payments/providers/__tests__/stripe.test.ts.
Use types from @src/payments/types.ts."
Katta o'zgarishlar oldidan: Shift+Tab ikki marta — plan mode. Claude oldin tahlil qiladi, plan beradi, siz tasdiqlaysiz, keyin amalga oshiradi. Bu — "rework" kamaytirishning eng yaxshi usuli.
Investigatsion ishlarni subagent'ga bering. Misol:
"Use the Explore agent to investigate how authentication is implemented
across the codebase. Report back with: entry points, middleware chain,
session management, and any TODOs or known issues. Under 300 words."
Subagent qaytadi, asosiy kontekst toza qoladi. Siz natijani olib, asosiy ishni davom ettirasiz.
Mustaqil tasklarni parallel ishga tushiring. Misollar:
claude -p ishga tushiringYangi vazifa = yangi sessiya. Eski kontekst — bu shovqin. Tezroq, aniqroq, arzonroq.
Loyihada qayta-qayta tushuntirayotgan narsangizni CLAUDE.md ga qo'shing. Bu bir marta yoziladi, har sessiyada ishlaydi. Token jihatdan eng samarali investitsiya.
Agar siz biror narsani 3+ marta qilgan bo'lsangiz — skill yarating. Skill'lar metadata sifatida yuklanadi (kontekst arzon) va kerakli paytda to'liq mazmunini olib chiqadi.
Linter, formatter, test runner kabi narsalarni hook'larga aylantirib qo'ying. Claude shularni unutsa ham, hook ishlatadi.
| Model | Qachon |
|---|---|
| Opus | Eng murakkab refactor, dizayn, debugging, security review |
| Sonnet | Default tanlov — ko'p ishlar uchun ideal |
| Haiku | Tezkor savollar, oddiy izohlar, headless'da arzon ishlash |
/model bilan sessiya o'rtasida ham almashtirish mumkin.
/cost — vaqti-vaqti bilan tekshiring--max-budget-usd — cap qo'ying/compact ishlating--max-turnsUI ishi uchun — har doim screenshot. Implementatsiya, browser'da oching, screenshot oling, yopishtiring — "shu dizayn'ga to'g'rimi?". Iteratsiya aylanasi qisqaradi.
Test-driven development — AI assistent uchun ideal. Claude'ga aytishingiz: "Avval failing test yoz, keyin implement qil, keyin testlar o'tishini tekshir." Bu sikl Claude'ga aniq feedback beradi.
Claude o'z ishini tekshirishni unutmasin. TodoList'da har doim "verify" stepi bo'lsin: test ishga tushirish, screenshot ko'rish, diff o'qish va h.k. Trust but verify.
Git workflow, bug investigation, refactoring, code review, CI integration — qaysi vaziyatda Claude'ni qanday ishlatish.
git checkout -b feature/user-export
claude
> Implement a CSV export endpoint at GET /api/users/export.
Follow the pattern in @src/api/orders/export.ts. Use the existing
CSV utilities from @lib/csv.ts. Add tests.
[Claude works ...]
> Run all tests
> Looks good. Now create a commit and open a PR. Use conventional commit format.
[Claude runs git add, commit, gh pr create]
claude
> We have a flaky test in @src/api/__tests__/auth.test.ts.
It fails about 1 in 5 runs with "session expired".
Use the Explore agent to investigate the auth flow and find the race
condition. Then propose a fix.
[Explore agent investigates, returns summary]
> OK, that hypothesis sounds right. Implement the fix and add a
regression test that demonstrates the issue.
claude
> (Shift+Tab Shift+Tab — plan mode)
> I want to refactor src/legacy/payments/ to use the new payment provider
abstraction. Don't make any changes — first, give me a plan. List:
files to change, new files to create, migration strategy, risks.
[Claude returns plan]
> Approved. Switch to acceptEdits mode and implement step 1.
claude
> /review
[Built-in /review skill activates, reviews PR diff, posts comments]
Yoki manual:
> Use the security-reviewer agent to audit the changes in this PR.
Then use a separate reviewer agent for code quality.
Run them in parallel.
.github/workflows/claude-review.yml:
name: Claude Review
on: pull_request
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- run: curl -fsSL https://claude.ai/install.sh | bash
- run: |
claude -p "Review this PR for bugs, security issues, and style.
Run: gh pr diff. Output as markdown checklist." \
--output-format json \
--max-budget-usd 1.00 \
--allowedTools "Bash(gh *) Read Grep" \
> review.json
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: gh pr comment $PR_NUMBER --body-file review.json
claude
> @src/db/schema.ts da User table'ga 'two_factor_enabled' boolean
ustun qo'shildi. Postgres uchun migration yoz: up + down. Existing
rows uchun default false. Index kerak emas. Migration'ni
./migrations/ ga qo'y.
claude
> src/api/ ichidagi har bir endpoint uchun OpenAPI spec yoz.
Existing spec @docs/openapi.yaml ni baseline qilib ol.
Endpoint discover qilish uchun src/api/routes.ts dan boshla.
claude
> I need to migrate from express to fastify. Here's the plan:
1. Use the 'researcher' agent to find all express-specific code.
Output: file list with the type of usage.
2. Use the 'planner' agent to design the migration phases.
3. We'll execute phases one by one with my approval.
Start by spawning the researcher and planner in parallel.
Diagnostika, tipik xatolar, debug logging va plugin/MCP'ni izolatsiya qilish — nimadir noto'g'ri ketganda nima qilish kerak.
Har qanday muammo — /doctor bilan boshlang. U quyidagilarni tekshiradi:
| Muammo | Yechim |
|---|---|
command not found: claude | ~/.local/bin ni PATH'ga qo'shing |
| "Model not found" | /model bilan tekshiring va sozlamalardagi modelni o'zgartiring |
| TLS/SSL xatolar | NODE_EXTRA_CA_CERTS ga korporativ CA path'ini bering |
| Auth ishlamayapti | /logout → /login qaytadan |
| Kontekst tez to'lyapti | Skill'larga o'ting (lazy load), subagent ishlatib investigation izolatsiya qiling |
| Permission prompt charchatdi | Sozlamalarda rules qo'ying yoki --permission-mode auto |
| MCP server start bo'lmayapti | /mcp bilan log ko'ring; .mcp.json'da env tekshiring |
| Hook ishlamayapti | /hooks bilan ko'ring; matcher to'g'ri ekanligini va exit code'ni tekshiring |
| Auto-compact tez-tez ishlayapti | Read'da limit/offset; subagent ishlating; /clear aggressive |
| "No IDEs detected" (WSL2) | Mirrored networking yoqing yoki firewall rule qo'shing |
claude --debug "api,hooks"
claude --debug-file /tmp/claude-debug.log
claude --version
claude update # Native installer'lar uchun
brew upgrade claude-code # Homebrew
winget upgrade Anthropic.ClaudeCode
Agar nimadir g'alati ishlasa, sof boshlang:
claude --plugin-dir /dev/null # Plugin'larsiz
claude --mcp-config /dev/null # MCP'larsiz
claude --bare # Minimal mode
Sessiya boshqaruvi, fayl/papka kirish, konfiguratsiya, tools va debug — barcha CLI bayroqlari bir joyda.
claude # Interaktiv
claude "prompt" # Boshlang'ich prompt bilan
claude -p "query" # Print mode (chiqib ketadi)
claude -c, --continue # Oxirgisini davom ettirish
claude -r, --resume [name] # Sessiya tanlash / nomi bilan
claude --fork-session # Yangi shoxda davom ettirish
claude -n "name" # Sessiyaga nom berish
claude --add-dir /path # Qo'shimcha papka kirish
claude -w branch-name # Worktree mode
claude --model claude-opus # Model override
claude --effort high # Effort darajasi
claude --permission-mode auto # Permission mode
claude --settings ./settings.json # Settings fayl
claude --system-prompt "text" # System prompt almashtirish
claude --append-system-prompt "..." # Qo'shimcha qo'shish
claude --system-prompt-file path # Fayldan
claude --allowedTools "..." # Pre-approve
claude --disallowedTools "..." # Bloklash
claude --tools "Bash,Edit,Read" # Faqat shu tool'lar
claude --dangerously-skip-permissions # Hech narsa so'ramaslik
claude -p --output-format json
claude -p --output-format stream-json
claude -p --output-format text
claude -p --max-turns 5
claude -p --max-budget-usd 10.00
claude --mcp-config ./mcp.json
claude --plugin-dir ./my-plugin
claude --debug "api,hooks"
claude --debug-file /tmp/log.txt
claude --verbose
claude --bare # Minimal mode (tez startup)
claude --version
claude update
Foydalanuvchi va loyiha darajasidagi sozlama, skill, agent, hook, MCP va sessiya fayllarining joylari.
| Maqsad | Yo'l |
|---|---|
| Foydalanuvchi sozlamalari | ~/.claude/settings.json |
| Loyiha sozlamalari | .claude/settings.json |
| Local override | .claude/settings.local.json |
| Foydalanuvchi skills | ~/.claude/skills/<name>/SKILL.md |
| Loyiha skills | .claude/skills/<name>/SKILL.md |
| Foydalanuvchi agentlari | ~/.claude/agents/<name>.md |
| Loyiha agentlari | .claude/agents/<name>.md |
| Hook'lar (loyiha) | .claude/settings.json ichida hooks bo'limi |
| Plugin hook'lar | <plugin>/hooks/hooks.json |
| MCP (loyiha) | .mcp.json |
| MCP (foydalanuvchi) | ~/.claude/mcp.json |
| Sessiya tarixi | ~/.claude/projects/<dir>/sessions/ |
| Loyiha ko'rsatmalari | ./CLAUDE.md |
| Shaxsiy override | ./CLAUDE.local.md |
| Global ko'rsatmalar | ~/.claude/CLAUDE.md |
| Plugin manifest | <plugin>/.claude-plugin/plugin.json |
| Worktrees | .claude/worktrees/<name> |
Eng kerakli buyruqlar, fayllar va patternlar — tezkor murojaat uchun.
claude # Boshlash
claude -c # Davom
claude -r # Tanlab davom
claude -p "..." # Headless
@file # Fayl kontekstga
/clear # Toza boshlash
/compact # Tarix qisqartirish
/context # Kontekst hajmi
/cost # Xarajat
/model # Model almashtirish
/agents # Agent ro'yxati
/mcp # MCP serverlar
/hooks # Hooks
/permissions # Ruxsat qoidalari
/init # CLAUDE.md
/review # PR review
/doctor # Diagnostika
/think hard # Kuchli fikrlash
/ultrathink # Eng kuchli fikrlash
Shift+Tab # Permission mode aylanish
Shift+Tab x2 # Plan mode
Esc Esc # Rewind menu
Cmd/Ctrl+V # Image paste
./CLAUDE.md # Loyiha xotirasi
./.claude/settings.json # Loyiha sozlamalari
./.claude/skills/*/SKILL.md # Custom skills
./.claude/agents/*.md # Subagentlar
./.mcp.json # MCP konfigi
/clear/ultrathink