fix(uk): complete translations for modules 06, 07, 09, 10

Modules 06-hooks, 07-plugins, 09-advanced-features, 10-cli had
truncated translations (18-58% content loss). Retranslated from
scratch using original English sources.

All files now match expected ~40% size increase for Cyrillic.

Ref: luongnv89/claude-howto#63
This commit is contained in:
Evgenij I
2026-04-09 19:55:57 +03:00
parent 8684be223d
commit 2a27614770
4 changed files with 4913 additions and 0 deletions
File diff suppressed because it is too large Load Diff
+953
View File
@@ -0,0 +1,953 @@
<!-- i18n-source: 07-plugins/README.md -->
<!-- i18n-source-sha: 63a1416 -->
<!-- i18n-date: 2026-04-09 -->
<picture>
<source media="(prefers-color-scheme: dark)" srcset="../resources/logos/claude-howto-logo-dark.svg">
<img alt="Claude How To" src="../resources/logos/claude-howto-logo.svg">
</picture>
# Плагіни Claude Code
Ця папка містить повні приклади плагінів, які обʼєднують кілька функцій Claude Code у цілісні пакети, що встановлюються однією командою.
## Огляд
Плагіни Claude Code — це обʼєднані колекції кастомізацій (слеш-команди, субагенти, MCP-сервери та хуки), які встановлюються однією командою. Вони є механізмом розширення найвищого рівня — поєднуючи кілька функцій у цілісні пакети, якими можна ділитися.
## Архітектура плагінів
```mermaid
graph TB
A["Plugin"]
B["Slash Commands"]
C["Subagents"]
D["MCP Servers"]
E["Hooks"]
F["Configuration"]
A -->|bundles| B
A -->|bundles| C
A -->|bundles| D
A -->|bundles| E
A -->|bundles| F
```
## Процес завантаження плагіна
```mermaid
sequenceDiagram
participant User
participant Claude as Claude Code
participant Plugin as Plugin Marketplace
participant Install as Installation
participant SlashCmds as Slash Commands
participant Subagents
participant MCPServers as MCP Servers
participant Hooks
participant Tools as Configured Tools
User->>Claude: /plugin install pr-review
Claude->>Plugin: Download plugin manifest
Plugin-->>Claude: Return plugin definition
Claude->>Install: Extract components
Install->>SlashCmds: Configure
Install->>Subagents: Configure
Install->>MCPServers: Configure
Install->>Hooks: Configure
SlashCmds-->>Tools: Ready to use
Subagents-->>Tools: Ready to use
MCPServers-->>Tools: Ready to use
Hooks-->>Tools: Ready to use
Tools-->>Claude: Plugin installed ✅
```
## Типи та дистрибуція плагінів
| Тип | Область | Спільний | Авторитет | Приклади |
|-----|---------|----------|-----------|----------|
| Офіційний | Глобальний | Усі користувачі | Anthropic | PR Review, Security Guidance |
| Спільнота | Публічний | Усі користувачі | Спільнота | DevOps, Data Science |
| Організація | Внутрішній | Члени команди | Компанія | Внутрішні стандарти, інструменти |
| Персональний | Індивідуальний | Один користувач | Розробник | Кастомні робочі процеси |
## Структура визначення плагіна
Маніфест плагіна використовує формат JSON у файлі `.claude-plugin/plugin.json`:
```json
{
"name": "my-first-plugin",
"description": "A greeting plugin",
"version": "1.0.0",
"author": {
"name": "Your Name"
},
"homepage": "https://example.com",
"repository": "https://github.com/user/repo",
"license": "MIT"
}
```
## Приклад структури плагіна
```
my-plugin/
├── .claude-plugin/
│ └── plugin.json # Маніфест (назва, опис, версія, автор)
├── commands/ # Навички як Markdown-файли
│ ├── task-1.md
│ ├── task-2.md
│ └── workflows/
├── agents/ # Визначення кастомних агентів
│ ├── specialist-1.md
│ ├── specialist-2.md
│ └── configs/
├── skills/ # Навички агентів з файлами SKILL.md
│ ├── skill-1.md
│ └── skill-2.md
├── hooks/ # Обробники подій у hooks.json
│ └── hooks.json
├── .mcp.json # Конфігурації MCP-серверів
├── .lsp.json # Конфігурації LSP-серверів для інтелектуальної роботи з кодом
├── bin/ # Виконувані файли, додані до PATH інструменту Bash поки плагін увімкнено
├── settings.json # Стандартні налаштування при увімкненні плагіна (наразі підтримується лише ключ `agent`)
├── templates/
│ └── issue-template.md
├── scripts/
│ ├── helper-1.sh
│ └── helper-2.py
├── docs/
│ ├── README.md
│ └── USAGE.md
└── tests/
└── plugin.test.js
```
### Конфігурація LSP-сервера
Плагіни можуть включати підтримку Language Server Protocol (LSP — протокол мовного сервера) для інтелектуальної роботи з кодом у реальному часі. LSP-сервери надають діагностику, навігацію по коду та інформацію про символи під час роботи.
**Розташування конфігурації**:
- Файл `.lsp.json` у кореневому каталозі плагіна
- Інлайн-ключ `lsp` у `plugin.json`
#### Довідник полів
| Поле | Обовʼязкове | Опис |
|------|-------------|------|
| `command` | Так | Бінарний файл LSP-сервера (має бути в PATH) |
| `extensionToLanguage` | Так | Відповідність розширень файлів ідентифікаторам мов |
| `args` | Ні | Аргументи командного рядка для сервера |
| `transport` | Ні | Метод комунікації: `stdio` (за замовчуванням) або `socket` |
| `env` | Ні | Змінні оточення для процесу сервера |
| `initializationOptions` | Ні | Опції, що надсилаються під час ініціалізації LSP |
| `settings` | Ні | Конфігурація робочого простору, що передається серверу |
| `workspaceFolder` | Ні | Перевизначення шляху до папки робочого простору |
| `startupTimeout` | Ні | Максимальний час (мс) очікування запуску сервера |
| `shutdownTimeout` | Ні | Максимальний час (мс) для коректного завершення |
| `restartOnCrash` | Ні | Автоматичний перезапуск при збої сервера |
| `maxRestarts` | Ні | Максимальна кількість спроб перезапуску |
#### Приклади конфігурацій
**Go (gopls)**:
```json
{
"go": {
"command": "gopls",
"args": ["serve"],
"extensionToLanguage": {
".go": "go"
}
}
}
```
**Python (pyright)**:
```json
{
"python": {
"command": "pyright-langserver",
"args": ["--stdio"],
"extensionToLanguage": {
".py": "python",
".pyi": "python"
}
}
}
```
**TypeScript**:
```json
{
"typescript": {
"command": "typescript-language-server",
"args": ["--stdio"],
"extensionToLanguage": {
".ts": "typescript",
".tsx": "typescriptreact",
".js": "javascript",
".jsx": "javascriptreact"
}
}
}
```
#### Доступні LSP-плагіни
Офіційний маркетплейс включає попередньо налаштовані LSP-плагіни:
| Плагін | Мова | Бінарний файл сервера | Команда встановлення |
|--------|------|----------------------|---------------------|
| `pyright-lsp` | Python | `pyright-langserver` | `pip install pyright` |
| `typescript-lsp` | TypeScript/JavaScript | `typescript-language-server` | `npm install -g typescript-language-server typescript` |
| `rust-lsp` | Rust | `rust-analyzer` | Встановлення через `rustup component add rust-analyzer` |
#### Можливості LSP
Після налаштування LSP-сервери надають:
- **Миттєва діагностика** — помилки та попередження зʼявляються одразу після редагування
- **Навігація по коду** — перехід до визначення, пошук посилань, реалізацій
- **Інформація при наведенні** — сигнатури типів та документація при наведенні курсора
- **Список символів** — перегляд символів у поточному файлі або робочому просторі
## Опції плагіна (v2.1.83+)
Плагіни можуть оголошувати користувацькі опції в маніфесті через `userConfig`. Значення з позначкою `sensitive: true` зберігаються у системному сховищі ключів (keychain), а не в текстових файлах налаштувань:
```json
{
"name": "my-plugin",
"version": "1.0.0",
"userConfig": {
"apiKey": {
"description": "API key for the service",
"sensitive": true
},
"region": {
"description": "Deployment region",
"default": "us-east-1"
}
}
}
```
## Постійні дані плагіна (`${CLAUDE_PLUGIN_DATA}`) (v2.1.78+)
Плагіни мають доступ до каталогу постійного стану через змінну оточення `${CLAUDE_PLUGIN_DATA}`. Цей каталог є унікальним для кожного плагіна та зберігається між сесіями, що робить його придатним для кешів, баз даних та іншого постійного стану:
```json
{
"hooks": {
"PostToolUse": [
{
"command": "node ${CLAUDE_PLUGIN_DATA}/track-usage.js"
}
]
}
}
```
Каталог створюється автоматично при встановленні плагіна. Файли зберігаються до видалення плагіна.
## Інлайн-плагін через налаштування (`source: 'settings'`) (v2.1.80+)
Плагіни можна визначати інлайн у файлах налаштувань як записи маркетплейсу з полем `source: 'settings'`. Це дозволяє вбудовувати визначення плагіна безпосередньо, без окремого репозиторію або маркетплейсу:
```json
{
"pluginMarketplaces": [
{
"name": "inline-tools",
"source": "settings",
"plugins": [
{
"name": "quick-lint",
"source": "./local-plugins/quick-lint"
}
]
}
]
}
```
## Налаштування плагіна
Плагіни можуть постачатися з файлом `settings.json` для стандартної конфігурації. Наразі підтримується ключ `agent`, який встановлює основного агента потоку для плагіна:
```json
{
"agent": "agents/specialist-1.md"
}
```
Коли плагін включає `settings.json`, його стандартні значення застосовуються при встановленні. Користувачі можуть перевизначити ці налаштування у своїй конфігурації проєкту або користувача.
## Автономний vs плагін-підхід
| Підхід | Назви команд | Конфігурація | Найкраще для |
|--------|-------------|--------------|--------------|
| **Автономний** | `/hello` | Ручне налаштування в CLAUDE.md | Персональне, специфічне для проєкту |
| **Плагіни** | `/plugin-name:hello` | Автоматичне через plugin.json | Поширення, дистрибуція, командна робота |
Використовуйте **автономні слеш-команди** для швидких персональних робочих процесів. Використовуйте **плагіни**, коли хочете обʼєднати кілька функцій, поділитися з командою або опублікувати для дистрибуції.
## Практичні приклади
### Приклад 1: Плагін PR Review
**Файл:** `.claude-plugin/plugin.json`
```json
{
"name": "pr-review",
"version": "1.0.0",
"description": "Complete PR review workflow with security, testing, and docs",
"author": {
"name": "Anthropic"
},
"repository": "https://github.com/your-org/pr-review",
"license": "MIT"
}
```
**Файл:** `commands/review-pr.md`
```markdown
---
name: Review PR
description: Start comprehensive PR review with security and testing checks
---
# PR Review
This command initiates a complete pull request review including:
1. Security analysis
2. Test coverage verification
3. Documentation updates
4. Code quality checks
5. Performance impact assessment
```
**Файл:** `agents/security-reviewer.md`
```yaml
---
name: security-reviewer
description: Security-focused code review
tools: read, grep, diff
---
# Security Reviewer
Specializes in finding security vulnerabilities:
- Authentication/authorization issues
- Data exposure
- Injection attacks
- Secure configuration
```
**Встановлення:**
```bash
/plugin install pr-review
# Результат:
# ✅ 3 слеш-команди встановлено
# ✅ 3 субагенти налаштовано
# ✅ 2 MCP-сервери підключено
# ✅ 4 хуки зареєстровано
# ✅ Готово до використання!
```
### Приклад 2: Плагін DevOps
**Компоненти:**
```
devops-automation/
├── commands/
│ ├── deploy.md
│ ├── rollback.md
│ ├── status.md
│ └── incident.md
├── agents/
│ ├── deployment-specialist.md
│ ├── incident-commander.md
│ └── alert-analyzer.md
├── mcp/
│ ├── github-config.json
│ ├── kubernetes-config.json
│ └── prometheus-config.json
├── hooks/
│ ├── pre-deploy.js
│ ├── post-deploy.js
│ └── on-error.js
└── scripts/
├── deploy.sh
├── rollback.sh
└── health-check.sh
```
### Приклад 3: Плагін документації
**Обʼєднані компоненти:**
```
documentation/
├── commands/
│ ├── generate-api-docs.md
│ ├── generate-readme.md
│ ├── sync-docs.md
│ └── validate-docs.md
├── agents/
│ ├── api-documenter.md
│ ├── code-commentator.md
│ └── example-generator.md
├── mcp/
│ ├── github-docs-config.json
│ └── slack-announce-config.json
└── templates/
├── api-endpoint.md
├── function-docs.md
└── adr-template.md
```
## Маркетплейс плагінів
Офіційний каталог плагінів, керований Anthropic — `anthropics/claude-plugins-official`. Адміністратори підприємств також можуть створювати приватні маркетплейси для внутрішньої дистрибуції.
```mermaid
graph TB
A["Plugin Marketplace"]
B["Official<br/>anthropics/claude-plugins-official"]
C["Community<br/>Marketplace"]
D["Enterprise<br/>Private Registry"]
A --> B
A --> C
A --> D
B -->|Categories| B1["Development"]
B -->|Categories| B2["DevOps"]
B -->|Categories| B3["Documentation"]
C -->|Search| C1["DevOps Automation"]
C -->|Search| C2["Mobile Dev"]
C -->|Search| C3["Data Science"]
D -->|Internal| D1["Company Standards"]
D -->|Internal| D2["Legacy Systems"]
D -->|Internal| D3["Compliance"]
style A fill:#e1f5fe,stroke:#333,color:#333
style B fill:#e8f5e9,stroke:#333,color:#333
style C fill:#f3e5f5,stroke:#333,color:#333
style D fill:#fff3e0,stroke:#333,color:#333
```
### Конфігурація маркетплейсу
Підприємства та просунуті користувачі можуть контролювати поведінку маркетплейсу через налаштування:
| Налаштування | Опис |
|-------------|------|
| `extraKnownMarketplaces` | Додати додаткові джерела маркетплейсу крім стандартних |
| `strictKnownMarketplaces` | Контролювати, які маркетплейси дозволено додавати користувачам |
| `deniedPlugins` | Блок-список для запобігання встановленню конкретних плагінів (керований адміністратором) |
### Додаткові функції маркетплейсу
- **Стандартний таймаут git**: Збільшено з 30с до 120с для великих репозиторіїв плагінів
- **Кастомні npm-реєстри**: Плагіни можуть вказувати URL кастомних npm-реєстрів для розвʼязання залежностей
- **Фіксація версій**: Закріплення плагінів за конкретними версіями для відтворюваних середовищ
### Схема визначення маркетплейсу
Маркетплейси плагінів визначаються у `.claude-plugin/marketplace.json`:
```json
{
"name": "my-team-plugins",
"owner": "my-org",
"plugins": [
{
"name": "code-standards",
"source": "./plugins/code-standards",
"description": "Enforce team coding standards",
"version": "1.2.0",
"author": "platform-team"
},
{
"name": "deploy-helper",
"source": {
"source": "github",
"repo": "my-org/deploy-helper",
"ref": "v2.0.0"
},
"description": "Deployment automation workflows"
}
]
}
```
| Поле | Обовʼязкове | Опис |
|------|-------------|------|
| `name` | Так | Назва маркетплейсу в kebab-case |
| `owner` | Так | Організація або користувач, що підтримує маркетплейс |
| `plugins` | Так | Масив записів плагінів |
| `plugins[].name` | Так | Назва плагіна (kebab-case) |
| `plugins[].source` | Так | Джерело плагіна (рядок шляху або обʼєкт джерела) |
| `plugins[].description` | Ні | Короткий опис плагіна |
| `plugins[].version` | Ні | Рядок семантичної версії |
| `plugins[].author` | Ні | Імʼя автора плагіна |
### Типи джерел плагінів
Плагіни можуть завантажуватися з кількох місць:
| Джерело | Синтаксис | Приклад |
|---------|-----------|---------|
| **Відносний шлях** | Рядок шляху | `"./plugins/my-plugin"` |
| **GitHub** | `{ "source": "github", "repo": "owner/repo" }` | `{ "source": "github", "repo": "acme/lint-plugin", "ref": "v1.0" }` |
| **Git URL** | `{ "source": "url", "url": "..." }` | `{ "source": "url", "url": "https://git.internal/plugin.git" }` |
| **Підкаталог Git** | `{ "source": "git-subdir", "url": "...", "path": "..." }` | `{ "source": "git-subdir", "url": "https://github.com/org/monorepo.git", "path": "packages/plugin" }` |
| **npm** | `{ "source": "npm", "package": "..." }` | `{ "source": "npm", "package": "@acme/claude-plugin", "version": "^2.0" }` |
| **pip** | `{ "source": "pip", "package": "..." }` | `{ "source": "pip", "package": "claude-data-plugin", "version": ">=1.0" }` |
Джерела GitHub та git підтримують необовʼязкові поля `ref` (гілка/тег) та `sha` (хеш коміту) для фіксації версій.
### Методи дистрибуції
**GitHub (рекомендовано)**:
```bash
# Користувачі додають ваш маркетплейс
/plugin marketplace add owner/repo-name
```
**Інші git-сервіси** (потрібен повний URL):
```bash
/plugin marketplace add https://gitlab.com/org/marketplace-repo.git
```
**Приватні репозиторії**: Підтримуються через git credential helpers або токени оточення. Користувачі повинні мати доступ на читання до репозиторію.
**Подання до офіційного маркетплейсу**: Подавайте плагіни до курованого Anthropic маркетплейсу для ширшої дистрибуції через [claude.ai/settings/plugins/submit](https://claude.ai/settings/plugins/submit) або [platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit).
### Суворий режим (strict mode)
Контроль взаємодії визначень маркетплейсу з локальними файлами `plugin.json`:
| Налаштування | Поведінка |
|-------------|----------|
| `strict: true` (за замовчуванням) | Локальний `plugin.json` є авторитетним; запис маркетплейсу доповнює його |
| `strict: false` | Запис маркетплейсу є повним визначенням плагіна |
**Обмеження організації** через `strictKnownMarketplaces`:
| Значення | Ефект |
|----------|-------|
| Не встановлено | Без обмежень — користувачі можуть додавати будь-який маркетплейс |
| Порожній масив `[]` | Блокування — маркетплейси заборонені |
| Масив патернів | Білий список — дозволено лише маркетплейси, що відповідають патернам |
```json
{
"strictKnownMarketplaces": [
"my-org/*",
"github.com/trusted-vendor/*"
]
}
```
> **Увага**: У суворому режимі з `strictKnownMarketplaces` користувачі можуть встановлювати плагіни лише з маркетплейсів білого списку. Це корисно для корпоративних середовищ, що вимагають контрольованої дистрибуції плагінів.
## Встановлення та життєвий цикл плагіна
```mermaid
graph LR
A["Discover"] -->|Browse| B["Marketplace"]
B -->|Select| C["Plugin Page"]
C -->|View| D["Components"]
D -->|Install| E["/plugin install"]
E -->|Extract| F["Configure"]
F -->|Activate| G["Use"]
G -->|Check| H["Update"]
H -->|Available| G
G -->|Done| I["Disable"]
I -->|Later| J["Enable"]
J -->|Back| G
```
## Порівняння функцій плагінів
| Функція | Слеш-команда | Навичка | Субагент | Плагін |
|---------|-------------|---------|----------|--------|
| **Встановлення** | Ручне копіювання | Ручне копіювання | Ручна конфігурація | Одна команда |
| **Час налаштування** | 5 хвилин | 10 хвилин | 15 хвилин | 2 хвилини |
| **Обʼєднання** | Один файл | Один файл | Один файл | Кілька |
| **Версіонування** | Ручне | Ручне | Ручне | Автоматичне |
| **Поширення в команді** | Копіювання файлу | Копіювання файлу | Копіювання файлу | ID встановлення |
| **Оновлення** | Ручне | Ручне | Ручне | Автоматично доступне |
| **Залежності** | Немає | Немає | Немає | Можуть включати |
| **Маркетплейс** | Ні | Ні | Ні | Так |
| **Дистрибуція** | Репозиторій | Репозиторій | Репозиторій | Маркетплейс |
## CLI-команди плагінів
Усі операції з плагінами доступні як CLI-команди:
```bash
claude plugin install <n>@<marketplace> # Встановити з маркетплейсу
claude plugin uninstall <n> # Видалити плагін
claude plugin list # Список встановлених плагінів
claude plugin enable <n> # Увімкнути вимкнений плагін
claude plugin disable <n> # Вимкнути плагін
claude plugin validate # Валідація структури плагіна
```
## Методи встановлення
### З маркетплейсу
```bash
/plugin install plugin-name
# або з CLI:
claude plugin install plugin-name@marketplace-name
```
### Увімкнення / Вимкнення (з автовизначенням області)
```bash
/plugin enable plugin-name
/plugin disable plugin-name
```
### Локальний плагін (для розробки)
```bash
# CLI-прапорець для локального тестування (повторюваний для кількох плагінів)
claude --plugin-dir ./path/to/plugin
claude --plugin-dir ./plugin-a --plugin-dir ./plugin-b
```
### З Git-репозиторію
```bash
/plugin install github:username/repo
```
## Коли створювати плагін
```mermaid
graph TD
A["Should I create a plugin?"]
A -->|Need multiple components| B{"Multiple commands<br/>or subagents<br/>or MCPs?"}
B -->|Yes| C["✅ Create Plugin"]
B -->|No| D["Use Individual Feature"]
A -->|Team workflow| E{"Share with<br/>team?"}
E -->|Yes| C
E -->|No| F["Keep as Local Setup"]
A -->|Complex setup| G{"Needs auto<br/>configuration?"}
G -->|Yes| C
G -->|No| D
```
### Випадки використання плагінів
| Випадок | Рекомендація | Чому |
|---------|-------------|------|
| **Онбординг команди** | ✅ Плагін | Миттєве налаштування, усі конфігурації |
| **Налаштування фреймворку** | ✅ Плагін | Обʼєднує команди, специфічні для фреймворку |
| **Корпоративні стандарти** | ✅ Плагін | Централізована дистрибуція, контроль версій |
| **Швидка автоматизація** | ❌ Команда | Надмірна складність |
| **Одна предметна область** | ❌ Навичка | Занадто важко, використовуйте навичку |
| **Спеціалізований аналіз** | ❌ Субагент | Створіть вручну або використовуйте навичку |
| **Доступ до живих даних** | ❌ MCP | Автономний, не обʼєднуйте |
## Тестування плагіна
Перед публікацією протестуйте плагін локально за допомогою CLI-прапорця `--plugin-dir` (повторюваний для кількох плагінів):
```bash
claude --plugin-dir ./my-plugin
claude --plugin-dir ./my-plugin --plugin-dir ./another-plugin
```
Це запускає Claude Code з завантаженим плагіном, дозволяючи:
- Перевірити доступність усіх слеш-команд
- Протестувати коректну роботу субагентів та агентів
- Підтвердити правильне підключення MCP-серверів
- Валідувати виконання хуків
- Перевірити конфігурації LSP-серверів
- Виявити помилки конфігурації
## Гаряче перезавантаження (Hot-Reload)
Плагіни підтримують гаряче перезавантаження під час розробки. При зміні файлів плагіна Claude Code може автоматично виявляти зміни. Також можна примусово перезавантажити командою:
```bash
/reload-plugins
```
Це повторно зчитує всі маніфести плагінів, команди, агентів, навички, хуки та конфігурації MCP/LSP без перезапуску сесії.
## Керовані налаштування для плагінів
Адміністратори можуть контролювати поведінку плагінів в організації через керовані налаштування (managed settings):
| Налаштування | Опис |
|-------------|------|
| `enabledPlugins` | Білий список плагінів, увімкнених за замовчуванням |
| `deniedPlugins` | Блок-список плагінів, які не можна встановити |
| `extraKnownMarketplaces` | Додаткові джерела маркетплейсу крім стандартних |
| `strictKnownMarketplaces` | Обмеження маркетплейсів, які дозволено додавати користувачам |
| `allowedChannelPlugins` | Контроль дозволених плагінів для кожного каналу випуску |
Ці налаштування можна застосувати на рівні організації через файли керованої конфігурації, і вони мають пріоритет над налаштуваннями рівня користувача.
## Безпека плагінів
Субагенти плагінів працюють в обмеженій пісочниці (sandbox). Наступні ключі frontmatter **заборонені** у визначеннях субагентів плагінів:
- `hooks` — субагенти не можуть реєструвати обробники подій
- `mcpServers` — субагенти не можуть налаштовувати MCP-сервери
- `permissionMode` — субагенти не можуть перевизначати модель дозволів
Це гарантує, що плагіни не можуть підвищити привілеї або модифікувати хост-середовище за межами оголошеної області.
## Публікація плагіна
**Кроки для публікації:**
1. Створити структуру плагіна з усіма компонентами
2. Написати маніфест `.claude-plugin/plugin.json`
3. Створити `README.md` з документацією
4. Протестувати локально за допомогою `claude --plugin-dir ./my-plugin`
5. Подати до маркетплейсу плагінів
6. Пройти перевірку та затвердження
7. Публікація в маркетплейсі
8. Користувачі можуть встановити однією командою
**Приклад подання:**
```markdown
# PR Review Plugin
## Description
Complete PR review workflow with security, testing, and documentation checks.
## What's Included
- 3 slash commands for different review types
- 3 specialized subagents
- GitHub and CodeQL MCP integration
- Automated security scanning hooks
## Installation
```bash
/plugin install pr-review
```
## Features
✅ Security analysis
✅ Test coverage checking
✅ Documentation verification
✅ Code quality assessment
✅ Performance impact analysis
## Usage
```bash
/review-pr
/check-security
/check-tests
```
## Requirements
- Claude Code 1.0+
- GitHub access
- CodeQL (optional)
```
## Плагін vs ручна конфігурація
**Ручне налаштування (2+ години):**
- Встановити слеш-команди одну за одною
- Створити субагентів окремо
- Налаштувати MCP окремо
- Встановити хуки вручну
- Задокументувати все
- Поширити в команді (сподіватися, що налаштують правильно)
**З плагіном (2 хвилини):**
```bash
/plugin install pr-review
# ✅ Все встановлено та налаштовано
# ✅ Готово до використання одразу
# ✅ Команда може відтворити точну конфігурацію
```
## Найкращі практики
### Рекомендовано ✅
- Використовуйте зрозумілі, описові назви плагінів
- Включайте вичерпний README
- Версіонуйте плагін правильно (semver — семантичне версіонування)
- Тестуйте всі компоненти разом
- Документуйте вимоги чітко
- Надавайте приклади використання
- Включайте обробку помилок
- Тегуйте належним чином для виявлення
- Підтримуйте зворотну сумісність
- Тримайте плагіни зосередженими та цілісними
- Включайте вичерпні тести
- Документуйте всі залежності
### Не рекомендовано ❌
- Не обʼєднуйте неповʼязані функції
- Не зашивайте облікові дані в код
- Не пропускайте тестування
- Не забувайте про документацію
- Не створюйте надлишкових плагінів
- Не ігноруйте версіонування
- Не ускладнюйте залежності компонентів
- Не забувайте обробляти помилки коректно
## Інструкції зі встановлення
### Встановлення з маркетплейсу
1. **Перегляд доступних плагінів:**
```bash
/plugin list
```
2. **Деталі плагіна:**
```bash
/plugin info plugin-name
```
3. **Встановлення плагіна:**
```bash
/plugin install plugin-name
```
### Встановлення з локального шляху
```bash
/plugin install ./path/to/plugin-directory
```
### Встановлення з GitHub
```bash
/plugin install github:username/repo
```
### Список встановлених плагінів
```bash
/plugin list --installed
```
### Оновлення плагіна
```bash
/plugin update plugin-name
```
### Вимкнення/Увімкнення плагіна
```bash
# Тимчасове вимкнення
/plugin disable plugin-name
# Повторне увімкнення
/plugin enable plugin-name
```
### Видалення плагіна
```bash
/plugin uninstall plugin-name
```
## Повʼязані концепції
Наступні функції Claude Code працюють разом з плагінами:
- **[Слеш-команди](../01-slash-commands/)** — окремі команди, обʼєднані в плагіни
- **[Памʼять](../02-memory/)** — постійний контекст для плагінів
- **[Навички](../03-skills/)** — предметна експертиза, яку можна обгорнути в плагіни
- **[Субагенти](../04-subagents/)** — спеціалізовані агенти як компоненти плагінів
- **[MCP-сервери](../05-mcp/)** — інтеграції Model Context Protocol, обʼєднані в плагіни
- **[Хуки](../06-hooks/)** — обробники подій, що запускають робочі процеси плагінів
## Повний приклад робочого процесу
### Повний робочий процес плагіна PR Review
```
1. Користувач: /review-pr
2. Плагін виконує:
├── pre-review.js хук валідує git-репо
├── GitHub MCP отримує дані PR
├── security-reviewer субагент аналізує безпеку
├── test-checker субагент перевіряє покриття
└── performance-analyzer субагент перевіряє продуктивність
3. Результати синтезуються та представляються:
✅ Безпека: Критичних проблем не виявлено
⚠️ Тестування: Покриття 65% (рекомендовано 80%+)
✅ Продуктивність: Значного впливу немає
📝 Надано 12 рекомендацій
```
## Усунення несправностей
### Плагін не встановлюється
- Перевірте сумісність версії Claude Code: `/version`
- Перевірте синтаксис `plugin.json` валідатором JSON
- Перевірте підключення до інтернету (для віддалених плагінів)
- Перевірте дозволи: `ls -la plugin/`
### Компоненти не завантажуються
- Переконайтеся, що шляхи в `plugin.json` відповідають фактичній структурі каталогів
- Перевірте дозволи файлів: `chmod +x scripts/`
- Перегляньте синтаксис файлів компонентів
- Перевірте журнали: `/plugin debug plugin-name`
### Збій підключення MCP
- Переконайтеся, що змінні оточення встановлені правильно
- Перевірте встановлення та працездатність MCP-сервера
- Протестуйте підключення MCP окремо за допомогою `/mcp test`
- Перегляньте конфігурацію MCP у каталозі `mcp/`
### Команди недоступні після встановлення
- Переконайтеся, що плагін встановлено успішно: `/plugin list --installed`
- Перевірте, чи плагін увімкнено: `/plugin status plugin-name`
- Перезапустіть Claude Code: `exit` та відкрийте знову
- Перевірте конфлікти назв з існуючими командами
### Проблеми з виконанням хуків
- Переконайтеся, що файли хуків мають правильні дозволи
- Перевірте синтаксис хуків та назви подій
- Перегляньте журнали хуків для деталей помилок
- Протестуйте хуки вручну, якщо можливо
## Додаткові ресурси
- [Офіційна документація плагінів](https://code.claude.com/docs/en/plugins)
- [Каталог плагінів](https://code.claude.com/docs/en/discover-plugins)
- [Маркетплейси плагінів](https://code.claude.com/docs/en/plugin-marketplaces)
- [Довідник плагінів](https://code.claude.com/docs/en/plugins-reference)
- [Довідник MCP-серверів](https://modelcontextprotocol.io/)
- [Посібник конфігурації субагентів](../04-subagents/README.md)
- [Довідник системи хуків](../06-hooks/README.md)
---
**Останнє оновлення**: 9 квітня 2026
**Версія Claude Code**: 2.1.97
**Сумісні моделі**: Claude Sonnet 4.6, Claude Opus 4.6, Claude Haiku 4.5
File diff suppressed because it is too large Load Diff
+841
View File
@@ -0,0 +1,841 @@
<!-- i18n-source: 10-cli/README.md -->
<!-- i18n-source-sha: 63a1416 -->
<!-- i18n-date: 2026-04-09 -->
<picture>
<source media="(prefers-color-scheme: dark)" srcset="../resources/logos/claude-howto-logo-dark.svg">
<img alt="Claude How To" src="../resources/logos/claude-howto-logo.svg">
</picture>
# Довідник CLI
## Огляд
Claude Code CLI (інтерфейс командного рядка — основний інструмент для роботи з терміналом) — це головний спосіб взаємодії з Claude Code. Він надає потужні опції для виконання запитів, управління сесіями, конфігурації моделей та інтеграції Claude у ваші робочі процеси розробки.
## Архітектура
```mermaid
graph TD
A["User Terminal"] -->|"claude [options] [query]"| B["Claude Code CLI"]
B -->|Interactive| C["REPL Mode"]
B -->|"--print"| D["Print Mode (SDK)"]
B -->|"--resume"| E["Session Resume"]
C -->|Conversation| F["Claude API"]
D -->|Single Query| F
E -->|Load Context| F
F -->|Response| G["Output"]
G -->|text/json/stream-json| H["Terminal/Pipe"]
```
## CLI-команди
| Команда | Опис | Приклад |
|---------|------|---------|
| `claude` | Запуск інтерактивного REPL (циклу читання-виконання-виводу) | `claude` |
| `claude "query"` | Запуск REPL з початковим промптом | `claude "explain this project"` |
| `claude -p "query"` | Print-режим — запит і вихід | `claude -p "explain this function"` |
| `cat file \| claude -p "query"` | Обробка вмісту через pipe (конвеєр) | `cat logs.txt \| claude -p "explain"` |
| `claude -c` | Продовжити останню розмову | `claude -c` |
| `claude -c -p "query"` | Продовжити в print-режимі | `claude -c -p "check for type errors"` |
| `claude -r "<session>" "query"` | Відновити сесію за ID або назвою | `claude -r "auth-refactor" "finish this PR"` |
| `claude update` | Оновити до останньої версії | `claude update` |
| `claude mcp` | Налаштування MCP-серверів | Див. [документацію MCP](../05-mcp/) |
| `claude mcp serve` | Запуск Claude Code як MCP-сервера | `claude mcp serve` |
| `claude agents` | Список усіх налаштованих субагентів | `claude agents` |
| `claude auto-mode defaults` | Вивести стандартні правила auto mode як JSON | `claude auto-mode defaults` |
| `claude remote-control` | Запуск сервера Remote Control | `claude remote-control` |
| `claude plugin` | Управління плагінами (встановлення, увімкнення, вимкнення) | `claude plugin install my-plugin` |
| `claude auth login` | Вхід (підтримує `--email`, `--sso`) | `claude auth login --email user@example.com` |
| `claude auth logout` | Вихід з поточного облікового запису | `claude auth logout` |
| `claude auth status` | Перевірка статусу авторизації (код виходу 0 = увійшов, 1 = ні) | `claude auth status` |
## Основні прапорці
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `-p, --print` | Вивести відповідь без інтерактивного режиму | `claude -p "query"` |
| `-c, --continue` | Завантажити останню розмову | `claude --continue` |
| `-r, --resume` | Відновити конкретну сесію за ID або назвою | `claude --resume auth-refactor` |
| `-v, --version` | Показати номер версії | `claude -v` |
| `-w, --worktree` | Запуск в ізольованому git worktree (робочому дереві) | `claude -w` |
| `-n, --name` | Відображувана назва сесії | `claude -n "auth-refactor"` |
| `--from-pr <number>` | Відновити сесії, привʼязані до GitHub PR | `claude --from-pr 42` |
| `--remote "task"` | Створити веб-сесію на claude.ai | `claude --remote "implement API"` |
| `--remote-control, --rc` | Інтерактивна сесія з Remote Control | `claude --rc` |
| `--teleport` | Відновити веб-сесію локально | `claude --teleport` |
| `--teammate-mode` | Режим відображення Agent Teams | `claude --teammate-mode tmux` |
| `--bare` | Мінімальний режим (без хуків, навичок, плагінів, MCP, auto memory, CLAUDE.md) | `claude --bare` |
| `--enable-auto-mode` | Розблокувати auto permission mode | `claude --enable-auto-mode` |
| `--channels` | Підписка на MCP channel plugins | `claude --channels discord,telegram` |
| `--chrome` / `--no-chrome` | Увімкнути/вимкнути інтеграцію з браузером Chrome | `claude --chrome` |
| `--effort` | Встановити рівень зусиль мислення | `claude --effort high` |
| `--init` / `--init-only` | Запуск хуків ініціалізації | `claude --init` |
| `--maintenance` | Запуск хуків обслуговування та вихід | `claude --maintenance` |
| `--disable-slash-commands` | Вимкнути всі навички та слеш-команди | `claude --disable-slash-commands` |
| `--no-session-persistence` | Вимкнути збереження сесії (print mode) | `claude -p --no-session-persistence "query"` |
### Інтерактивний vs Print-режим
```mermaid
graph LR
A["claude"] -->|Default| B["Interactive REPL"]
A -->|"-p flag"| C["Print Mode"]
B -->|Features| D["Multi-turn conversation<br>Tab completion<br>History<br>Slash commands"]
C -->|Features| E["Single query<br>Scriptable<br>Pipeable<br>JSON output"]
```
**Інтерактивний режим** (за замовчуванням):
```bash
# Запуск інтерактивної сесії
claude
# Запуск з початковим промптом
claude "explain the authentication flow"
```
**Print-режим** (неінтерактивний):
```bash
# Один запит, потім вихід
claude -p "what does this function do?"
# Обробка вмісту файлу
cat error.log | claude -p "explain this error"
# Ланцюжок з іншими інструментами
claude -p "list todos" | grep "URGENT"
```
## Модель та конфігурація
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--model` | Встановити модель (sonnet, opus, haiku або повна назва) | `claude --model opus` |
| `--fallback-model` | Автоматичний фолбек (запасна модель) при перевантаженні | `claude -p --fallback-model sonnet "query"` |
| `--agent` | Вказати агента для сесії | `claude --agent my-custom-agent` |
| `--agents` | Визначити кастомних субагентів через JSON | Див. [Конфігурація агентів](#конфігурація-агентів) |
| `--effort` | Встановити рівень зусиль (low, medium, high, max) | `claude --effort high` |
### Приклади вибору моделі
```bash
# Opus 4.6 для складних завдань
claude --model opus "design a caching strategy"
# Haiku 4.5 для швидких завдань
claude --model haiku -p "format this JSON"
# Повна назва моделі
claude --model claude-sonnet-4-6-20250929 "review this code"
# З фолбеком для надійності
claude -p --model opus --fallback-model sonnet "analyze architecture"
# opusplan (Opus планує, Sonnet виконує)
claude --model opusplan "design and implement the caching layer"
```
## Кастомізація системного промпта
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--system-prompt` | Замінити весь стандартний промпт | `claude --system-prompt "You are a Python expert"` |
| `--system-prompt-file` | Завантажити промпт з файлу (print mode) | `claude -p --system-prompt-file ./prompt.txt "query"` |
| `--append-system-prompt` | Додати до стандартного промпта | `claude --append-system-prompt "Always use TypeScript"` |
### Приклади системного промпта
```bash
# Повністю кастомна персона
claude --system-prompt "You are a senior security engineer. Focus on vulnerabilities."
# Додавання конкретних інструкцій
claude --append-system-prompt "Always include unit tests with code examples"
# Завантаження складного промпта з файлу
claude -p --system-prompt-file ./prompts/code-reviewer.txt "review main.py"
```
### Порівняння прапорців системного промпта
| Прапорець | Поведінка | Інтерактивний | Print |
|-----------|----------|---------------|-------|
| `--system-prompt` | Замінює весь стандартний системний промпт | ✅ | ✅ |
| `--system-prompt-file` | Замінює промптом з файлу | ❌ | ✅ |
| `--append-system-prompt` | Додає до стандартного системного промпта | ✅ | ✅ |
**Використовуйте `--system-prompt-file` лише в print-режимі. Для інтерактивного режиму використовуйте `--system-prompt` або `--append-system-prompt`.**
## Управління інструментами та дозволами
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--tools` | Обмежити доступні вбудовані інструменти | `claude -p --tools "Bash,Edit,Read" "query"` |
| `--allowedTools` | Інструменти, що виконуються без запиту дозволу | `"Bash(git log:*)" "Read"` |
| `--disallowedTools` | Інструменти, видалені з контексту | `"Bash(rm:*)" "Edit"` |
| `--dangerously-skip-permissions` | Пропустити всі запити дозволів | `claude --dangerously-skip-permissions` |
| `--permission-mode` | Починати у вказаному режимі дозволів | `claude --permission-mode auto` |
| `--permission-prompt-tool` | MCP-інструмент для обробки дозволів | `claude -p --permission-prompt-tool mcp_auth "query"` |
| `--enable-auto-mode` | Розблокувати auto permission mode | `claude --enable-auto-mode` |
### Приклади дозволів
```bash
# Режим тільки для читання — код-рев'ю
claude --permission-mode plan "review this codebase"
# Обмеження до безпечних інструментів
claude --tools "Read,Grep,Glob" -p "find all TODO comments"
# Дозволити конкретні git-команди без запитів
claude --allowedTools "Bash(git status:*)" "Bash(git log:*)"
# Заблокувати небезпечні операції
claude --disallowedTools "Bash(rm -rf:*)" "Bash(git push --force:*)"
```
## Вивід та формат
| Прапорець | Опис | Опції | Приклад |
|-----------|------|-------|---------|
| `--output-format` | Формат виводу (print mode) | `text`, `json`, `stream-json` | `claude -p --output-format json "query"` |
| `--input-format` | Формат вводу (print mode) | `text`, `stream-json` | `claude -p --input-format stream-json` |
| `--verbose` | Увімкнути детальне логування | | `claude --verbose` |
| `--include-partial-messages` | Включити потокові (streaming) події | Потребує `stream-json` | `claude -p --output-format stream-json --include-partial-messages "query"` |
| `--json-schema` | Отримати валідований JSON за схемою | | `claude -p --json-schema '{"type":"object"}' "query"` |
| `--max-budget-usd` | Максимальні витрати для print mode | | `claude -p --max-budget-usd 5.00 "query"` |
### Приклади формату виводу
```bash
# Звичайний текст (за замовчуванням)
claude -p "explain this code"
# JSON для програмного використання
claude -p --output-format json "list all functions in main.py"
# Потоковий JSON для обробки в реальному часі
claude -p --output-format stream-json "generate a long report"
# Структурований вивід із валідацією за схемою
claude -p --json-schema '{"type":"object","properties":{"bugs":{"type":"array"}}}' \
"find bugs in this code and return as JSON"
```
## Робочий простір та каталог
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--add-dir` | Додати додаткові робочі каталоги | `claude --add-dir ../apps ../lib` |
| `--setting-sources` | Джерела налаштувань через кому | `claude --setting-sources user,project` |
| `--settings` | Завантажити налаштування з файлу або JSON | `claude --settings ./settings.json` |
| `--plugin-dir` | Завантажити плагіни з каталогу (повторюваний) | `claude --plugin-dir ./my-plugin` |
### Приклад роботи з кількома каталогами
```bash
# Робота в кількох каталогах проєкту одночасно
claude --add-dir ../frontend ../backend ../shared "find all API endpoints"
# Завантаження кастомних налаштувань
claude --settings '{"model":"opus","verbose":true}' "complex task"
```
## Конфігурація MCP
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--mcp-config` | Завантажити MCP-сервери з JSON | `claude --mcp-config ./mcp.json` |
| `--strict-mcp-config` | Використовувати тільки вказану MCP-конфігурацію | `claude --strict-mcp-config --mcp-config ./mcp.json` |
| `--channels` | Підписка на MCP channel plugins | `claude --channels discord,telegram` |
### Приклади MCP
```bash
# Завантаження GitHub MCP-сервера
claude --mcp-config ./github-mcp.json "list open PRs"
# Суворий режим — тільки вказані сервери
claude --strict-mcp-config --mcp-config ./production-mcp.json "deploy to staging"
```
## Управління сесіями
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--session-id` | Використовувати конкретний ID сесії (UUID) | `claude --session-id "550e8400-..."` |
| `--fork-session` | Створити нову сесію при відновленні | `claude --resume abc123 --fork-session` |
### Приклади сесій
```bash
# Продовжити останню розмову
claude -c
# Відновити іменовану сесію
claude -r "feature-auth" "continue implementing login"
# Форк сесії для експериментів
claude --resume feature-auth --fork-session "try alternative approach"
# Використання конкретного ID сесії
claude --session-id "550e8400-e29b-41d4-a716-446655440000" "continue"
```
### Форк сесії
Створення відгалуження від існуючої сесії для експериментів:
```bash
# Форк сесії для альтернативного підходу
claude --resume abc123 --fork-session "try alternative implementation"
# Форк з кастомним повідомленням
claude -r "feature-auth" --fork-session "test with different architecture"
```
**Випадки використання:**
- Спроба альтернативних реалізацій без втрати оригінальної сесії
- Паралельне експериментування з різними підходами
- Створення відгалужень від успішної роботи для варіацій
- Тестування зламуючих змін (breaking changes) без впливу на основну сесію
Оригінальна сесія залишається без змін, а форк стає новою незалежною сесією.
## Розширені функції
| Прапорець | Опис | Приклад |
|-----------|------|---------|
| `--chrome` | Увімкнути інтеграцію з браузером Chrome | `claude --chrome` |
| `--no-chrome` | Вимкнути інтеграцію з Chrome | `claude --no-chrome` |
| `--ide` | Автопідключення до IDE, якщо доступна | `claude --ide` |
| `--max-turns` | Обмежити кількість агентних кроків (неінтерактивний режим) | `claude -p --max-turns 3 "query"` |
| `--debug` | Увімкнути режим налагодження з фільтрацією | `claude --debug "api,mcp"` |
| `--enable-lsp-logging` | Увімкнути детальне логування LSP | `claude --enable-lsp-logging` |
| `--betas` | Beta-заголовки для API-запитів | `claude --betas interleaved-thinking` |
| `--plugin-dir` | Завантажити плагіни з каталогу (повторюваний) | `claude --plugin-dir ./my-plugin` |
| `--enable-auto-mode` | Розблокувати auto permission mode | `claude --enable-auto-mode` |
| `--effort` | Встановити рівень зусиль мислення | `claude --effort high` |
| `--bare` | Мінімальний режим (без хуків, навичок, плагінів, MCP, auto memory, CLAUDE.md) | `claude --bare` |
| `--channels` | Підписка на MCP channel plugins | `claude --channels discord` |
| `--tmux` | Створити tmux-сесію для worktree | `claude --tmux` |
| `--fork-session` | Створити новий ID сесії при відновленні | `claude --resume abc --fork-session` |
| `--max-budget-usd` | Максимальні витрати (print mode) | `claude -p --max-budget-usd 5.00 "query"` |
| `--json-schema` | Валідований JSON-вивід | `claude -p --json-schema '{"type":"object"}' "q"` |
### Приклади розширених функцій
```bash
# Обмежити автономні дії
claude -p --max-turns 5 "refactor this module"
# Налагодження API-викликів
claude --debug "api" "test query"
# Увімкнути інтеграцію з IDE
claude --ide "help me with this file"
```
## Конфігурація агентів
Прапорець `--agents` приймає JSON-обʼєкт, що визначає кастомних субагентів для сесії.
### Формат JSON для агентів
```json
{
"agent-name": {
"description": "Обовʼязково: коли викликати цього агента",
"prompt": "Обовʼязково: системний промпт для агента",
"tools": ["Необовʼязково", "масив", "інструментів"],
"model": "необовʼязково: sonnet|opus|haiku"
}
}
```
**Обовʼязкові поля:**
- `description` — опис природною мовою, коли використовувати цього агента
- `prompt` — системний промпт, що визначає роль та поведінку агента
**Необовʼязкові поля:**
- `tools` — масив доступних інструментів (якщо не вказано, успадковує всі)
- Формат: `["Read", "Grep", "Glob", "Bash"]`
- `model` — модель: `sonnet`, `opus` або `haiku`
### Повний приклад агентів
```json
{
"code-reviewer": {
"description": "Expert code reviewer. Use proactively after code changes.",
"prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",
"tools": ["Read", "Grep", "Glob", "Bash"],
"model": "sonnet"
},
"debugger": {
"description": "Debugging specialist for errors and test failures.",
"prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes.",
"tools": ["Read", "Edit", "Bash", "Grep"],
"model": "opus"
},
"documenter": {
"description": "Documentation specialist for generating guides.",
"prompt": "You are a technical writer. Create clear, comprehensive documentation.",
"tools": ["Read", "Write"],
"model": "haiku"
}
}
```
### Приклади команд з агентами
```bash
# Визначення кастомних агентів інлайн
claude --agents '{
"security-auditor": {
"description": "Security specialist for vulnerability analysis",
"prompt": "You are a security expert. Find vulnerabilities and suggest fixes.",
"tools": ["Read", "Grep", "Glob"],
"model": "opus"
}
}' "audit this codebase for security issues"
# Завантаження агентів з файлу
claude --agents "$(cat ~/.claude/agents.json)" "review the auth module"
# Комбінація з іншими прапорцями
claude -p --agents "$(cat agents.json)" --model sonnet "analyze performance"
```
### Пріоритет агентів
При наявності кількох визначень агентів вони завантажуються в такому порядку пріоритету:
1. **CLI-визначені** (прапорець `--agents`) — для конкретної сесії
2. **Рівень користувача** (`~/.claude/agents/`) — для всіх проєктів
3. **Рівень проєкту** (`.claude/agents/`) — для поточного проєкту
CLI-визначені агенти перевизначають агентів рівня користувача та проєкту на час сесії.
---
## Високоцінні сценарії використання
### 1. Інтеграція CI/CD
Використання Claude Code у CI/CD-пайплайнах (конвеєрах безперервної інтеграції/доставки) для автоматизованого код-рев'ю, тестування та документації.
**Приклад GitHub Actions:**
```yaml
name: AI Code Review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Run Code Review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude -p --output-format json \
--max-turns 1 \
"Review the changes in this PR for:
- Security vulnerabilities
- Performance issues
- Code quality
Output as JSON with 'issues' array" > review.json
- name: Post Review Comment
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = JSON.parse(fs.readFileSync('review.json', 'utf8'));
// Обробка та публікація коментарів рев'ю
```
**Пайплайн Jenkins:**
```groovy
pipeline {
agent any
stages {
stage('AI Review') {
steps {
sh '''
claude -p --output-format json \
--max-turns 3 \
"Analyze test coverage and suggest missing tests" \
> coverage-analysis.json
'''
}
}
}
}
```
### 2. Pipe-обробка скриптів
Обробка файлів, журналів та даних через Claude для аналізу.
**Аналіз журналів:**
```bash
# Аналіз журналів помилок
tail -1000 /var/log/app/error.log | claude -p "summarize these errors and suggest fixes"
# Пошук патернів у журналах доступу
cat access.log | claude -p "identify suspicious access patterns"
# Аналіз git-історії
git log --oneline -50 | claude -p "summarize recent development activity"
```
**Обробка коду:**
```bash
# Рев'ю конкретного файлу
cat src/auth.ts | claude -p "review this authentication code for security issues"
# Генерація документації
cat src/api/*.ts | claude -p "generate API documentation in markdown"
# Пошук TODO та пріоритезація
grep -r "TODO" src/ | claude -p "prioritize these TODOs by importance"
```
### 3. Мультисесійні робочі процеси
Управління складними проєктами з кількома потоками розмов.
```bash
# Запуск сесії для гілки функції
claude -r "feature-auth" "let's implement user authentication"
# Пізніше — продовження сесії
claude -r "feature-auth" "add password reset functionality"
# Форк для альтернативного підходу
claude --resume feature-auth --fork-session "try OAuth instead"
# Переключення між різними сесіями функцій
claude -r "feature-payments" "continue with Stripe integration"
```
### 4. Кастомна конфігурація агентів
Визначення спеціалізованих агентів для робочих процесів вашої команди.
```bash
# Збереження конфігурації агентів у файл
cat > ~/.claude/agents.json << 'EOF'
{
"reviewer": {
"description": "Code reviewer for PR reviews",
"prompt": "Review code for quality, security, and maintainability.",
"model": "opus"
},
"documenter": {
"description": "Documentation specialist",
"prompt": "Generate clear, comprehensive documentation.",
"model": "sonnet"
},
"refactorer": {
"description": "Code refactoring expert",
"prompt": "Suggest and implement clean code refactoring.",
"tools": ["Read", "Edit", "Glob"]
}
}
EOF
# Використання агентів у сесії
claude --agents "$(cat ~/.claude/agents.json)" "review the auth module"
```
### 5. Пакетна обробка
Обробка кількох запитів з однаковими налаштуваннями.
```bash
# Обробка кількох файлів
for file in src/*.ts; do
echo "Processing $file..."
claude -p --model haiku "summarize this file: $(cat $file)" >> summaries.md
done
# Пакетне код-рев'ю
find src -name "*.py" -exec sh -c '
echo "## $1" >> review.md
cat "$1" | claude -p "brief code review" >> review.md
' _ {} \;
# Генерація тестів для всіх модулів
for module in $(ls src/modules/); do
claude -p "generate unit tests for src/modules/$module" > "tests/$module.test.ts"
done
```
### 6. Безпечна розробка
Використання контролю дозволів для безпечної роботи.
```bash
# Аудит безпеки тільки для читання
claude --permission-mode plan \
--tools "Read,Grep,Glob" \
"audit this codebase for security vulnerabilities"
# Блокування небезпечних команд
claude --disallowedTools "Bash(rm:*)" "Bash(curl:*)" "Bash(wget:*)" \
"help me clean up this project"
# Обмежена автоматизація
claude -p --max-turns 2 \
--allowedTools "Read" "Glob" \
"find all hardcoded credentials"
```
### 7. JSON API інтеграція
Використання Claude як програмного API для ваших інструментів з парсингом через `jq`.
```bash
# Структурований аналіз
claude -p --output-format json \
--json-schema '{"type":"object","properties":{"functions":{"type":"array"},"complexity":{"type":"string"}}}' \
"analyze main.py and return function list with complexity rating"
# Інтеграція з jq для обробки
claude -p --output-format json "list all API endpoints" | jq '.endpoints[]'
# Використання в скриптах
RESULT=$(claude -p --output-format json "is this code secure? answer with {secure: boolean, issues: []}" < code.py)
if echo "$RESULT" | jq -e '.secure == false' > /dev/null; then
echo "Security issues found!"
echo "$RESULT" | jq '.issues[]'
fi
```
### Приклади парсингу jq
Парсинг та обробка JSON-виводу Claude за допомогою `jq`:
```bash
# Витяг конкретних полів
claude -p --output-format json "analyze this code" | jq '.result'
# Фільтрація елементів масиву
claude -p --output-format json "list issues" | jq -r '.issues[] | select(.severity=="high")'
# Витяг кількох полів
claude -p --output-format json "describe the project" | jq -r '.{name, version, description}'
# Конвертація в CSV
claude -p --output-format json "list functions" | jq -r '.functions[] | [.name, .lineCount] | @csv'
# Умовна обробка
claude -p --output-format json "check security" | jq 'if .vulnerabilities | length > 0 then "UNSAFE" else "SAFE" end'
# Витяг вкладених значень
claude -p --output-format json "analyze performance" | jq '.metrics.cpu.usage'
# Обробка всього масиву
claude -p --output-format json "find todos" | jq '.todos | length'
# Трансформація виводу
claude -p --output-format json "list improvements" | jq 'map({title: .title, priority: .priority})'
```
---
## Моделі
Claude Code підтримує кілька моделей з різними можливостями:
| Модель | ID | Контекстне вікно | Примітки |
|--------|-----|-----------------|----------|
| Opus 4.6 | `claude-opus-4-6` | 1M токенів | Найпотужніша, адаптивні рівні зусиль |
| Sonnet 4.6 | `claude-sonnet-4-6` | 1M токенів | Баланс швидкості та можливостей |
| Haiku 4.5 | `claude-haiku-4-5` | 1M токенів | Найшвидша, оптимальна для швидких завдань |
### Вибір моделі
```bash
# Використання коротких назв
claude --model opus "complex architectural review"
claude --model sonnet "implement this feature"
claude --model haiku -p "format this JSON"
# Використання alias opusplan (Opus планує, Sonnet виконує)
claude --model opusplan "design and implement the API"
# Перемикання на швидкий режим під час сесії
/fast
```
### Рівні зусиль (Opus 4.6)
Opus 4.6 підтримує адаптивне міркування з рівнями зусиль:
```bash
# Через прапорець CLI
claude --effort high "complex review"
# Через слеш-команду
/effort high
# Через змінну оточення
export CLAUDE_CODE_EFFORT_LEVEL=high # low, medium, high або max (лише Opus 4.6)
```
Ключове слово "ultrathink" у промптах активує глибоке міркування. Рівень `max` — ексклюзивний для Opus 4.6.
---
## Ключові змінні оточення
| Змінна | Опис |
|--------|------|
| `ANTHROPIC_API_KEY` | API-ключ для автентифікації |
| `ANTHROPIC_MODEL` | Перевизначення стандартної моделі |
| `ANTHROPIC_CUSTOM_MODEL_OPTION` | Кастомна опція моделі для API |
| `ANTHROPIC_DEFAULT_OPUS_MODEL` | Перевизначення стандартного ID моделі Opus |
| `ANTHROPIC_DEFAULT_SONNET_MODEL` | Перевизначення стандартного ID моделі Sonnet |
| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Перевизначення стандартного ID моделі Haiku |
| `MAX_THINKING_TOKENS` | Бюджет токенів розширеного мислення |
| `CLAUDE_CODE_EFFORT_LEVEL` | Рівень зусиль (`low`/`medium`/`high`/`max`) |
| `CLAUDE_CODE_SIMPLE` | Мінімальний режим, встановлюється прапорцем `--bare` |
| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Вимкнути автоматичне оновлення CLAUDE.md |
| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Вимкнути виконання фонових завдань |
| `CLAUDE_CODE_DISABLE_CRON` | Вимкнути заплановані/cron-завдання |
| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Вимкнути git-інструкції |
| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Вимкнути оновлення заголовка терміналу |
| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Вимкнути контекстне вікно 1M токенів |
| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Вимкнути фолбек без стрімінгу |
| `CLAUDE_CODE_ENABLE_TASKS` | Увімкнути функцію списку завдань |
| `CLAUDE_CODE_TASK_LIST_ID` | Іменований каталог завдань, спільний між сесіями |
| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Увімкнути/вимкнути пропозиції промптів (`true`/`false`) |
| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Увімкнути експериментальні Agent Teams |
| `CLAUDE_CODE_NEW_INIT` | Використовувати новий потік ініціалізації |
| `CLAUDE_CODE_SUBAGENT_MODEL` | Модель для виконання субагентів |
| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Каталог для seed-файлів плагінів |
| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Змінні оточення для видалення з підпроцесів |
| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Перевизначити відсоток автокомпакції |
| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Таймаут простою потоку в мілісекундах |
| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Бюджет символів для інструментів слеш-команд |
| `ENABLE_TOOL_SEARCH` | Увімкнути пошук інструментів |
| `MAX_MCP_OUTPUT_TOKENS` | Максимум токенів для виводу MCP-інструмента |
---
## Швидкий довідник
### Найпоширеніші команди
```bash
# Інтерактивна сесія
claude
# Швидке питання
claude -p "how do I..."
# Продовжити розмову
claude -c
# Обробити файл
cat file.py | claude -p "review this"
# JSON-вивід для скриптів
claude -p --output-format json "query"
```
### Комбінації прапорців
| Сценарій | Команда |
|----------|---------|
| Швидке код-рев'ю | `cat file \| claude -p "review"` |
| Структурований вивід | `claude -p --output-format json "query"` |
| Безпечне дослідження | `claude --permission-mode plan` |
| Автономність з безпекою | `claude --enable-auto-mode --permission-mode auto` |
| CI/CD інтеграція | `claude -p --max-turns 3 --output-format json` |
| Відновлення роботи | `claude -r "session-name"` |
| Кастомна модель | `claude --model opus "complex task"` |
| Мінімальний режим | `claude --bare "quick query"` |
| Ліміт бюджету | `claude -p --max-budget-usd 2.00 "analyze code"` |
---
## Усунення несправностей
### Команда не знайдена
**Проблема:** `claude: command not found`
**Рішення:**
- Встановіть Claude Code: `npm install -g @anthropic-ai/claude-code`
- Перевірте, що PATH включає глобальний bin-каталог npm
- Спробуйте запуск з повним шляхом: `npx claude`
### Проблеми з API-ключем
**Проблема:** Помилка автентифікації
**Рішення:**
- Встановіть API-ключ: `export ANTHROPIC_API_KEY=your-key`
- Перевірте валідність ключа та наявність достатнього балансу
- Перевірте дозволи ключа для запитуваної моделі
### Сесія не знайдена
**Проблема:** Неможливо відновити сесію
**Рішення:**
- Перегляньте доступні сесії, щоб знайти правильну назву/ID
- Сесії можуть закінчуватися після періоду неактивності
- Використовуйте `-c` для продовження останньої сесії
### Проблеми з форматом виводу
**Проблема:** JSON-вивід пошкоджений
**Рішення:**
- Використовуйте `--json-schema` для примусового дотримання структури
- Додайте явні інструкції щодо JSON у промпті
- Використовуйте `--output-format json` (а не просто просіть JSON у промпті)
### Відмова в дозволі
**Проблема:** Виконання інструменту заблоковане
**Рішення:**
- Перевірте налаштування `--permission-mode`
- Перегляньте прапорці `--allowedTools` та `--disallowedTools`
- Використовуйте `--dangerously-skip-permissions` для автоматизації (з обережністю)
---
## Додаткові ресурси
- **[Офіційний довідник CLI](https://code.claude.com/docs/en/cli-reference)** — повний довідник команд
- **[Документація Headless Mode](https://code.claude.com/docs/en/headless)** — автоматизоване виконання
- **[Слеш-команди](../01-slash-commands/)** — кастомні ярлики в Claude
- **[Посібник з памʼяті](../02-memory/)** — постійний контекст через CLAUDE.md
- **[Протокол MCP](../05-mcp/)** — інтеграція зовнішніх інструментів
- **[Розширені функції](../09-advanced-features/)** — режим планування, розширене мислення
- **[Посібник субагентів](../04-subagents/)** — делеговане виконання завдань
---
*Частина серії посібників [Claude How To](../)*
---
**Останнє оновлення**: 9 квітня 2026
**Версія Claude Code**: 2.1.97
**Сумісні моделі**: Claude Sonnet 4.6, Claude Opus 4.6, Claude Haiku 4.5