A practical course · 2026Практический курс · 2026Практичний курс · 2026

CLAUDE CODE From idea to shipped.От идеи до релиза.Від ідеї до релізу.

How to work with an AI agent that reads your codebase, writes real code, and verifies its own work. For developers, designers, and product teams. Как работать с ИИ-агентом, который читает вашу кодовую базу, пишет настоящий код и сам проверяет результат. Для разработчиков, дизайнеров и продуктовых команд.Як працювати з ШІ-агентом, який читає вашу кодову базу, пише справжній код і сам перевіряє результат. Для розробників, дизайнерів і продуктових команд.

A course byАвтор курсаАвтор курсу Oleg Osypenko

Swipe to move between slides Листайте слайды свайпом Гортайте слайди свайпом to move between slides листать слайды гортати слайди

What's insideЧто внутриЩо всередині

Six chapters.Шесть глав.Шість розділів. One superpower.Одна суперсила.Одна суперсила.

01

IntroductionВведениеВступ

What Claude Code is and how the agent actually thinks.Что такое Claude Code и как агент думает на самом деле.Що таке Claude Code і як агент насправді думає.

02

Setup, step by stepНастройка по шагамНалаштування крок за кроком

From install to a fully configured workspace.От установки до полностью настроенного окружения.Від встановлення до повністю налаштованого середовища.

03

Role playbooksРолевые сценарииРольові сценарії

Real workflows for developers, designers, and product people.Реальные процессы для разработчиков, дизайнеров и продактов.Реальні процеси для розробників, дизайнерів і продактів.

04

Best practicesЛучшие практикиНайкращі практики

The habits that separate pros from tourists.Привычки, которые отличают профи от туристов.Звички, які відрізняють профі від туристів.

05

Practice & homeworkПрактикум и домашкаПрактикум і домашка

Hands-on exercises for today and a plan for the week.Упражнения на сегодня и план на неделю.Вправи на сьогодні та план на тиждень.

06

Cheat sheetШпаргалкаШпаргалка

Commands, shortcuts, and where to go next.Команды, хоткеи и куда двигаться дальше.Команди, хоткеї та куди рухатися далі.

INTRODUCTION · INTRODUCTION · INTRODUCTION · INTRODUCTION · INTRODUCTION · INTRODUCTION ·
CHAPTER 01

Meet your newЗнакомьтесь: вашЗнайомтесь: ваш teammate.новый тиммейт.новий тіммейт.

What is Claude CodeЧто такое Claude CodeЩо таке Claude Code

An agent that livesАгент, который живётАгент, який живе where you work.там, где работаете вы.там, де працюєте ви.

Claude Code is Anthropic's coding agent — it doesn't just answer questions, it does the work inside your project. Describe the outcome in plain language: it plans, edits files, runs commands, and shows you every change before it lands. Claude Code — агент для разработки от Anthropic: не просто отвечает, а делает работу в вашем проекте. Опишите результат обычным языком — он спланирует, изменит файлы, запустит команды и покажет каждую правку.Claude Code — агент для розробки від Anthropic: не просто відповідає, а виконує роботу у вашому проєкті. Опишіть результат звичайною мовою — він спланує, змінить файли, запустить команди й покаже кожну правку.

⌘

TerminalТерминалТермінал

The original CLI. Full power, any stack.Исходный CLI. Вся мощь, любой стек.Оригінальний CLI. Уся міць, будь-який стек.

⌥

IDE

VS Code and JetBrains extensions, inline diffs.Расширения для VS Code и JetBrains, диффы прямо в редакторе.Розширення для VS Code і JetBrains, дифи просто в редакторі.

◱

Desktop & WebДесктоп и вебДесктоп і веб

Native app and claude.ai/code — parallel sessions in the cloud.Приложение и claude.ai/code — параллельные сессии в облаке.Застосунок і claude.ai/code — паралельні сесії в хмарі.

⎇

GitHub & CIGitHub и CIGitHub і CI

Mention @claude in a GitHub issue or PR. Can also run unattended, on every build.Упомяните @claude в issue или PR. Может работать и без человека, на каждой сборке.Згадайте @claude в issue чи PR. Може працювати й без людини, на кожній збірці.

Same agent, every surfaceОдин агент, все поверхностиОдин агент, усі поверхні
# terminal — interactive, or one-shot for scriptsтерминал — интерактивно или разово, для скриптовтермінал — інтерактивно або разово, для скриптів
$ claude
$ claude -p "summarize what changed in the last 10 commits"
# IDE — same session, diffs inline in the editorIDE — та же сессия, диффы прямо в редактореIDE — та сама сесія, дифи просто в редакторі
$ code . → ⌘Esc
# desktop & web — no terminal at allдесктоп и веб — вообще без терминаладесктоп і веб — узагалі без термінала
claude.ai/code
# GitHub — right in the issue threadGitHub — прямо в треде issueGitHub — просто в треді issue
@claude this test is flaky on CI — find out why
Your first five minutesПервые пять минутПерші п’ять хвилин

Three people.Три человека.Три людини. Three first prompts.Три первых промпта.Три перші промпти.

Before any configuration, before any setup — this is what you type on day one. Each one is a question about a project you already have, and none of them changes a single file. До всякой настройки и конфигурации — вот что вы печатаете в первый день. Каждый промпт — вопрос о проекте, который у вас уже есть, и ни один из них не меняет ни одного файла.До будь-якого налаштування й конфігурації — ось що ви вводите першого дня. Кожен промпт — питання про проєкт, який у вас уже є, і жоден із них не змінює жодного файлу.

DeveloperРазработчикРозробник

Start where you always start: a file you didn't write.Начните там, где начинаете всегда: с файла, который писали не вы.Почніть там, де починаєте завжди: з файлу, який писали не ви.

Explain what src/api/orders.ts does and where it gets called from.Объясни, что делает src/api/orders.ts и откуда он вызывается.Поясни, що робить src/api/orders.ts і звідки він викликається.

DesignerДизайнерДизайнер

It can open the page and look at it, the way you would.Он может открыть страницу и посмотреть на неё — как это сделали бы вы.Він може відкрити сторінку й подивитися на неї — як зробили б ви.

Open our pricing page in a browser, take a screenshot, and tell me what looks misaligned.Открой нашу страницу с ценами в браузере, сделай скриншот и скажи, что выглядит съехавшим.Відкрий нашу сторінку з цінами в браузері, зроби скріншот і скажи, що зміщено.

Manager / POМенеджер / POМенеджер / PO

Ask the codebase the question you'd otherwise ask an engineer.Задайте коду вопрос, который иначе задали бы инженеру.Поставте коду питання, яке інакше поставили б інженерові.

Read this repo and describe, in one paragraph and without jargon, what the product does.Прочитай этот репозиторий и опиши одним абзацем, без жаргона, что делает продукт.Прочитай цей репозиторій і опиши одним абзацом, без жаргону, що робить продукт.

Notice what they have in common: you describe what you want to know, not which files to open. Finding those is the agent's job. Обратите внимание на общее: вы описываете, что хотите узнать, а не какие файлы открыть. Искать их — работа агента.Зверніть увагу на спільне: ви описуєте, що хочете дізнатися, а не які файли відкрити. Шукати їх — робота агента.

The differenceВ чём разницаУ чому різниця

Not a chatbot.Не чат-бот.Не чат-бот. A coworker.Соисполнитель.Колега.

Both can answer questions. Only one of them does the work. The practical difference: Отвечать на вопросы умеют оба. Но работу делает только один. Практическая разница:Відповідати на запитання вміють обидва. Але роботу виконує лише один. Практична різниця:

A chatbotЧат-ботЧат-бот

Suggests snippets you paste by hand. Sees only what you paste in. Forgets your project the moment you close the tab. Предлагает сниппеты, которые вы вставляете руками. Видит только то, что вы прислали. Забывает проект, как только вы закрываете вкладку.Пропонує сніпети, які ви вставляєте вручну. Бачить лише те, що ви надіслали. Забуває проєкт, щойно ви закрили вкладку.

Claude Code

Reads your actual codebase. Edits files, runs tests and git itself. Verifies the result, fixes what broke, and iterates until it works. Читает вашу настоящую кодовую базу. Сам правит файлы, запускает тесты и git. Проверяет результат, чинит сломанное и итерирует, пока не заработает.Читає вашу справжню кодову базу. Сам редагує файли, запускає тести й git. Перевіряє результат, лагодить зламане та ітерує, доки не запрацює.

The same question, two different worldsОдин вопрос — два разных мираОдне питання — два різні світи
> why is our login slow?
 
✗ chatbotчат-ботчат-бот "Common causes are N+1 queries, missing indexes…"«Обычные причины — N+1 запросы, отсутствие индексов…»«Звичні причини — N+1 запити, брак індексів…»
✓ Claude Code
● read auth.service.ts · ran the login flow · timed itпрочитал auth.service.ts · прогнал вход · замерилпрочитав auth.service.ts · запустив вхід · заміряв час
● findUser() runs 3× per request — no memoizationfindUser() вызывается 3× за запрос — нет мемоизацииfindUser() викликається 3× за запит — немає мемоізації
✓ Memoized it — 840ms → 190ms. Want the diff?Замемоизировал — 840ms → 190ms. Показать дифф?Замемоізував — 840ms → 190ms. Показати диф?
How it worksКак это работаетЯк це працює

The agent loop.Цикл агента.Цикл агента.

Under the hood, every task — big or small — goes through the same cycle. It's how a careful engineer works, just faster: Под капотом каждая задача — большая или маленькая — проходит один и тот же цикл. Так работает внимательный инженер, только быстрее:Під капотом кожне завдання — велике чи мале — проходить той самий цикл. Так працює уважний інженер, лише швидше:

UnderstandПонятьЗрозуміти your goalвашу цельвашу мету
→
ExploreИзучитьДослідити the codebaseкодовую базукодову базу
→
ActДействоватьДіяти edit · run · testправить · запускать · тестироватьредагувати · запускати · тестувати
→
VerifyПроверитьПеревірити did it work?сработало ли?чи спрацювало?
↻
IterateПовторитьПовторити until doneдо результатадо результату

Every action runs through your permission system. You stay in control — the agent does the legwork. Каждое действие проходит через вашу систему разрешений. Контроль у вас — агент берёт на себя рутину.Кожна дія проходить через вашу систему дозволів. Контроль у вас — агент бере на себе рутину.

In plain words: you decide in advance what it may do on its own. Anything outside that, it stops and asks. Простыми словами: вы заранее решаете, что ему можно делать самому. Всё, что за пределами этого, — он останавливается и спрашивает.Простими словами: ви заздалегідь вирішуєте, що йому можна робити самому. Усе інше — він зупиняється й запитує.

The same loop, in one real taskТот же цикл на одной реальной задачеТой самий цикл на одному реальному завданні
> The date on invoices is off by one day for EU users
● 1 · understandпонятьзрозуміти timezone bug, EU only, invoicesбаг таймзоны, только EU, счетабаг таймзони, лише EU, рахунки
● 2 · exploreизучитьдослідити read invoice.ts, date-utils.ts, 2 testsчитаю invoice.ts, date-utils.ts, 2 тестачитаю invoice.ts, date-utils.ts, 2 тести
● 3 · actдействоватьдіяти toLocaleDateString() used UTC — switched to user tztoLocaleDateString() брал UTC — перевёл на tz юзераtoLocaleDateString() брав UTC — перевів на tz юзера
● 4 · verifyпроверитьперевірити npm test → 40/41 ✗ one snapshot still on UTCодин снапшот всё ещё в UTCодин снапшот усе ще в UTC
● 5 · iterateповторитьповторити updated the snapshot · npm test → 41/41обновил снапшот · npm test → 41/41оновив снапшот · npm test → 41/41 ✓
✓ One file changed. Review the diff?Изменён один файл. Посмотрите дифф?Змінено один файл. Переглянути диф?
The loop, without the codeТот же цикл, но без кодаТой самий цикл, але без коду

Same five steps,Те же пять шагов,Ті самі п’ять кроків, no programming.без программирования.без програмування.

The loop isn't a developer thing. Here it is on a task anyone on the team could own: the wording in our error messages sounds rude. Этот цикл — не только про разработку. Вот он на задаче, которую мог бы взять любой в команде: формулировки в наших сообщениях об ошибках звучат грубо.Цей цикл — не лише про розробку. Ось він на завданні, яке міг би взяти будь-хто в команді: формулювання в наших повідомленнях про помилки звучать грубо.

A writing task, run by the same engineТекстовая задача на том же движкеТекстове завдання на тому самому рушії
> Our error messages sound like they're blaming the user.Our error messages sound like they're blaming the user.Our error messages sound like they're blaming the user.
Find them and rewrite them to be kind and specific.Find them and rewrite them to be kind and specific.Find them and rewrite them to be kind and specific.
 
● 1 · understandпонятьзрозуміти tone problem, user-facing text onlyпроблема тона, только тексты для пользователяпроблема тону, лише тексти для користувача
● 2 · exploreизучитьдослідити found 34 message strings across 9 filesнашёл 34 строки сообщений в 9 файлахзнайшов 34 рядки повідомлень у 9 файлах
● 3 · actсделатьзробити rewrote the 12 that assign blame, left 22 aloneпереписал 12, где есть обвинение, 22 не тронулпереписав 12, де є звинувачення, 22 не чіпав
● 4 · verifyпроверитьперевірити the tests that check exact wording still passтесты, проверяющие точные формулировки, проходяттести, що перевіряють точні формулювання, проходять
 
> Too casual now. Keep it warm but professional.Too casual now. Keep it warm but professional.Too casual now. Keep it warm but professional.
● 5 · iterateповторитьповторити toned down 12 of 12 · "Oops!" → "That didn't go through"смягчил 12 из 12 · «Упс!» → «Не получилось отправить»пом’якшив 12 з 12 · «Ой!» → «Не вдалося надіслати»
✓ 9 files changed. Want to read them side by side?Изменено 9 файлов. Показать «было → стало»?Змінено 9 файлів. Показати «було → стало»?

Step 5 is the one people forget: you don't have to get the prompt right the first time. Saying "too casual" is a complete instruction. Про пятый шаг обычно забывают: промпт не обязан быть идеальным с первого раза. «Слишком неформально» — это уже полноценное указание.Про п’ятий крок зазвичай забувають: промпт не мусить бути ідеальним з першого разу. «Занадто неформально» — це вже повноцінна вказівка.

Out of the boxИз коробкиЗ коробки

What it alreadyЧто он ужеЩо він уже does.умеет.вміє.

No plugins, no extra setup — these capabilities work from day one: Без плагинов и дополнительной настройки — эти умения доступны с первого дня:Без плагінів і додаткових налаштувань — ці вміння доступні з першого дня:

Write & refactor codeПисать и рефакторить кодПисати й рефакторити код

Features, fixes, migrations — across many files at once.Фичи, фиксы, миграции — сразу по многим файлам.Фічі, фікси, міграції — одразу в багатьох файлах.

Run tests & commandsЗапускать тесты и командыЗапускати тести й команди

Runs the same commands you run — tests, builds, linters — and reads what they print.Запускает те же команды, что и вы — тесты, сборку, линтеры — и читает, что они вывели.Запускає ті самі команди, що й ви — тести, збірку, лінтери — і читає, що вони вивели.

Git, commits & PRsGit, коммиты и PRGit, коміти та PR

Branches, meaningful commits, pull requests with summaries.Ветки, осмысленные коммиты, PR с описанием.Гілки, осмислені коміти, PR з описом.

Search the web & docsИскать в вебе и докахШукати у вебі й доках

Current APIs and answers, not stale memory.Актуальные API и ответы, а не устаревшая память.Актуальні API та відповіді, а не застаріла пам’ять.

See images & designsВидеть картинки и макетыБачити картинки й макети

Screenshots, mockups, PDFs — paste them straight in.Скриншоты, макеты, PDF — просто вставьте их в чат.Скріншоти, макети, PDF — просто вставте їх у чат.

Automate the boringАвтоматизировать рутинуАвтоматизувати рутину

Style warnings, clashes when two people edited the same lines, release notes, repetitive edits.Замечания линтера, конфликты, когда двое правили одни и те же строки, release notes, однотипные правки.Зауваження лінтера, конфлікти, коли двоє правили ті самі рядки, release notes, однотипні правки.

One prompt, four of those abilities at onceОдин промпт — четыре из этих умений сразуОдин промпт — чотири з цих умінь одразу
> Bump us to React 19. Check the changelog for breaking
changes, migrate the code, keep tests green, open a PR.
● web searchпоиск в вебепошук у вебі read the React 19 upgrade guideпрочитал гайд по миграции на React 19прочитав гайд з міграції на React 19
● editправкиправки 18 files · removed forwardRef, fixed ref props18 файлов · убрал forwardRef, поправил ref-пропсы18 файлів · прибрав forwardRef, виправив ref-пропси
● testsтестытести npm test → 128/128 ✓
● git branch chore/react-19 · PR #341 openedветка chore/react-19 · открыт PR #341гілка chore/react-19 · відкрито PR #341
Out of the box · by roleИз коробки · по ролямЗ коробки · за ролями

The same six abilities,Те же шесть умений,Ті самі шість умінь, your job.ваша работа.ваша робота.

The abilities don't change from role to role — what changes is the task you point them at. One real request each: Умения от роли к роли не меняются — меняется задача, на которую вы их направляете. По одному реальному запросу на каждую:Уміння від ролі до ролі не змінюються — змінюється завдання, на яке ви їх спрямовуєте. По одному реальному запиту на кожну:

DeveloperРазработчикРозробник

Editing many files at once, then proving nothing broke.Правка многих файлов сразу — и доказательство, что ничего не сломалось.Редагування багатьох файлів одразу — і доказ, що нічого не зламалося.

Move our date handling off moment.js to date-fns. Keep every test green and show me what changed.Переведи работу с датами с moment.js на date-fns. Все тесты должны остаться зелёными; покажи, что изменилось.Переведи роботу з датами з moment.js на date-fns. Усі тести мають лишитися зеленими; покажи, що змінилося.

DesignerДизайнерДизайнер

Seeing an image and comparing it against the real code.Видит картинку и сверяет её с реальным кодом.Бачить картинку й звіряє її зі справжнім кодом.

[screenshot] This is our approved button. Find every button in the app that doesn't match it, and list them by file.[скриншот] Это наша утверждённая кнопка. Найди все кнопки в приложении, которые ей не соответствуют, и перечисли их по файлам.[скріншот] Це наша затверджена кнопка. Знайди всі кнопки в застосунку, що їй не відповідають, і перелічи їх за файлами.

Manager / POМенеджер / POМенеджер / PO

Turning git history into something a customer can read.Превращает историю git в то, что можно показать клиенту.Перетворює історію git на те, що можна показати клієнту.

Read the last 30 commits and write release notes a non-technical customer would understand. Skip anything internal.Прочитай последние 30 коммитов и напиши release notes, понятные нетехническому клиенту. Внутреннее пропусти.Прочитай останні 30 комітів і напиши release notes, зрозумілі нетехнічному клієнту. Внутрішнє пропусти.

Each of these uses three or four of the six abilities at once. You never have to name them — you just describe the outcome. В каждом из этих запросов задействовано сразу три-четыре умения из шести. Называть их не нужно — вы просто описываете результат.У кожному з цих запитів задіяно одразу три-чотири вміння з шести. Називати їх не потрібно — ви просто описуєте результат.

In numbersВ цифрахУ цифрах
3

surfaces — terminal, IDE, and cloud. Same agent, your choice of home. поверхности — терминал, IDE и облако. Один агент, дом выбираете вы.поверхні — термінал, IDE та хмара. Один агент, дім обираєте ви.

100+

external tools reachable through MCP — a standard plug for connecting outside tools: Figma, GitHub, Sentry, databases, browsers. Step 09 covers it. внешних инструментов через MCP — стандартный разъём для подключения сторонних инструментов: Figma, GitHub, Sentry, базы данных, браузеры. Подробно — на шаге 09.зовнішніх інструментів через MCP — стандартний роз’єм для під’єднання сторонніх інструментів: Figma, GitHub, Sentry, бази даних, браузери. Докладно — на кроці 09.

0 copy-pasteкопипастыкопіпасти

Claude edits files directly — you review the diff, a clear before/after list of every change, instead of shuttling snippets by hand. Claude правит файлы сам — вы смотрите дифф (наглядный список изменений «было → стало»), а не переносите куски кода руками.Claude редагує файли сам — ви переглядаєте диф (наочний список змін «було → стало»), а не переносите шматки коду вручну.

One rule holds everywhere: you review, it executes. Одно правило работает везде: вы ревьюите — он исполняет.Одне правило працює скрізь: ви робите рев’ю — він виконує.

SETUP · SETUP · SETUP · SETUP · SETUP · SETUP · SETUP · SETUP · SETUP · SETUP ·
CHAPTER 02

From zeroОт нуляВід нуля to configured.до полной настройки.до повного налаштування.

Ten steps. Each one takes minutes and pays off forever. Десять шагов. Каждый занимает минуты, а окупается навсегда.Десять кроків. Кожен займає хвилини, а окупається назавжди.

Step 01 · InstallШаг 01 · УстановкаКрок 01 · Встановлення

One command.Одна команда.Одна команда. Any machine.Любая машина.Будь-яка машина.

One line in the terminal installs the agent. Then open your project folder, type claude — and the session starts right next to your code. Одна строка в терминале устанавливает агента. Дальше откройте папку проекта, наберите claude — и сессия начнётся прямо рядом с вашим кодом.Один рядок у терміналі встановлює агента. Далі відкрийте папку проєкту, наберіть claude — і сесія почнеться просто поруч із вашим кодом.

zsh — install
# macOS · Linux · WSL
$ brew install --cask claude-code
 
# or: npm i -g @anthropic-ai/claude-code · or the installer at claude.ai/install
 
# then start it inside your project
$ cd my-project && claude

Prefer clicking? There's a desktop app and claude.ai/code in the browser — same agent. Не любите терминал? Есть десктоп-приложение и claude.ai/code в браузере — тот же агент.Не любите термінал? Є десктопний застосунок і claude.ai/code у браузері — той самий агент.

If the terminal is new to youЕсли терминал для вас в новинкуЯкщо ви ще не працювали в терміналі

Sixty secondsШестьдесят секундШістдесят секунд of terminal.терминала.термінала.

The terminal is a window where you type commands instead of clicking. These six are all you need to start — after that, you talk to Claude in ordinary language. Терминал — это окно, где вы печатаете команды вместо того, чтобы кликать. Этих шести команд хватит, чтобы начать, — а дальше вы говорите с Claude обычным языком.Термінал — це вікно, де ви набираєте команди текстом, а не клікаєте мишкою. Цих шести команд вистачить, щоб почати, — а далі ви говорите з Claude звичайною мовою.

pwdwhich folder am I in right now?в какой папке я сейчас?у якій папці я зараз?
lswhat's inside this folder?что лежит в этой папке?що лежить у цій папці?
cd my-projectgo into the folder called my-projectзайти в папку my-projectзайти в папку my-project
cd ..go back out, one level upвыйти обратно, на уровень вверхвийти назад, на рівень вище
claudestart the agent here, in this folderзапустить агента здесь, в этой папкезапустити агента тут, у цій папці
Ctrl+Cstop whatever is runningостановить то, что выполняетсязупинити те, що виконується
The whole thing, start to finishВсё целиком, от начала до концаУсе цілком, від початку до кінця
$ pwd
/Users/you ← I'm in my home folderя в домашней папкея в домашній папці
$ cd projects/website ← go where the project livesиду туда, где лежит проектіду туди, де лежить проєкт
$ claude ← and that's it. Now just type.и всё. Дальше просто пишите.і все. Далі просто пишіть.

Claude only ever works inside the folder you started it in. That's the whole safety model of "where am I" — so pwd is worth checking before you begin. Claude работает только внутри той папки, в которой вы его запустили. В этом вся модель безопасности «где я нахожусь» — поэтому перед началом стоит проверить pwd.Claude працює лише всередині тієї папки, у якій ви його запустили. У цьому вся модель безпеки «де я перебуваю» — тому перед початком варто перевірити pwd.

Step 02 · Sign inШаг 02 · ВходКрок 02 · Вхід

Log in once,Один вход —Один вхід — work everywhere.работа везде.робота всюди.

On first run, Claude Code opens the browser to sign you in with a Claude subscription (Pro, Max, Team, Enterprise) or a Console API account. Your login is saved in your operating system's password store — not in any file in your project. При первом запуске Claude Code откроет браузер для входа через подписку Claude (Pro, Max, Team, Enterprise) или аккаунт Console API. Данные входа сохраняются в системном хранилище паролей, а не в файлах вашего проекта.Під час першого запуску Claude Code відкриє браузер для входу через підписку Claude (Pro, Max, Team, Enterprise) або акаунт Console API. Дані входу зберігаються в системному сховищі паролів, а не у файлах вашого проєкту.

Pro / Max — individualsдля индивидуальной работыдля індивідуальної роботи Team / Enterprise — organizationsдля организацийдля організацій Console API — pay per useоплата за использованиеоплата за використання
What the first run looks likeКак выглядит первый запускЯкий вигляд має перший запуск
$ claude
? How would you like to sign in?Как хотите войти?Як хочете увійти?
❯ Claude subscription (Pro / Max / Team)Подписка Claude (Pro / Max / Team)Підписка Claude (Pro / Max / Team)
Anthropic Console API keyAPI-ключ Anthropic ConsoleAPI-ключ Anthropic Console
● Opened the browser… waiting for authorizationОткрыл браузер… жду авторизациюВідкрив браузер… чекаю авторизацію
✓ Signed in. Credentials stored in the system keychain.Вход выполнен. Данные — в системном keychain.Вхід виконано. Дані — у системному keychain.
Step 03 · First sessionШаг 03 · Первая сессияКрок 03 · Перша сесія

Describe outcomes,Описывайте результат,Описуйте результат, not keystrokes.а не нажатия клавиш.а не натискання клавіш.

A prompt is a short brief, not a manual: what to do, within which constraints, and how to check it's done. Below is a real session — your request on top, Claude's actions underneath. Промпт — это короткий бриф, а не инструкция: что сделать, в каких рамках и как проверить готовность. Ниже реальная сессия: сверху ваш запрос, под ним — действия Claude.Промпт — це короткий бриф, а не інструкція: що зробити, у яких межах і як перевірити готовність. Нижче реальна сесія: згори ваш запит, під ним — дії Claude.

claude — my-project
> Add rate limiting to POST /api/login — max 5 attempts
per minute per IP. Use our existing Redis client. Add tests.
 
● Reading src/middleware, src/lib/redis.ts…Читаю src/middleware, src/lib/redis.ts…Читаю src/middleware, src/lib/redis.ts…
● Edited 3 files · created rateLimit.test.tsИзменил 3 файла · создал rateLimit.test.tsЗмінив 3 файли · створив rateLimit.test.ts
✓ Tests pass — 14/14. Review the diff?Тесты зелёные — 14/14. Посмотрите дифф?Тести зелені — 14/14. Переглянути диф?

Goal (rate limiting) + constraints (our Redis client) + definition of done (tests pass). The diff it offers at the end is the full list of code changes for your review. Цель (rate limiting) + ограничения (наш Redis-клиент) + критерий готовности (тесты проходят). Дифф в конце — это полный список изменений в коде, который вы проверяете перед принятием.Ціль (rate limiting) + обмеження (наш Redis-клієнт) + критерій готовності (тести проходять). Диф наприкінці — це повний список змін у коді, який ви перевіряєте перед прийняттям.

The shape of a good briefФорма хорошего брифаФорма хорошого брифа

Goal · ConstraintsЦель · ОграниченияЦіль · Обмеження · Done.· Готово.· Готово.

That three-part shape is the whole skill, and it doesn't depend on your job. Same formula, three very different tasks: Эта трёхчастная форма — и есть весь навык, и она не зависит от вашей профессии. Одна формула, три совсем разные задачи:Ця тричастинна форма — і є вся навичка, і вона не залежить від вашої професії. Одна формула, три зовсім різні завдання:

DeveloperРазработчикРозробник

Goal · within our stack · proven by tests.Цель · в рамках нашего стека · доказано тестами.Ціль · у межах нашого стеку · доведено тестами.

Add pagination to the orders list. Use the same cursor helper as the invoices list. Done when the existing tests pass and you've added one for an empty page.Добавь пагинацию в список заказов. Используй тот же курсорный хелпер, что и в списке счетов. Готово, когда существующие тесты проходят и добавлен тест на пустую страницу.Додай пагінацію до списку замовлень. Використай той самий курсорний хелпер, що й у списку рахунків. Готово, коли наявні тести проходять і додано тест на порожню сторінку.

DesignerДизайнерДизайнер

Goal · within our tokens · proven by a screenshot.Цель · в рамках наших токенов · доказано скриншотом.Ціль · у межах наших токенів · доведено скріншотом.

Build the testimonial card from this frame. Use only our existing colour and spacing tokens. Done when you show me a screenshot at 1440 and 390 wide.Собери карточку с отзывом из этого фрейма. Используй только наши существующие токены цвета и отступов. Готово, когда покажешь скриншот на ширине 1440 и 390.Збери картку з відгуком із цього фрейму. Використовуй лише наші наявні токени кольору й відступів. Готово, коли покажеш скріншот на ширині 1440 і 390.

Manager / POМенеджер / POМенеджер / PO

Goal · grounded in real code · proven by a list.Цель · опираясь на реальный код · доказано списком.Ціль · спираючись на справжній код · доведено списком.

Draft the spec for the export feature. Base it on what export.service.ts actually does today, not on what we wish it did. Done when every edge case is a separate numbered line.Набросай спеку по фиче экспорта. Опирайся на то, что export.service.ts делает сегодня, а не на то, чего нам хотелось бы. Готово, когда каждый краевой случай — отдельный нумерованный пункт.Накидай спеку фічі експорту. Спирайся на те, що export.service.ts робить сьогодні, а не на те, чого нам хотілося б. Готово, коли кожен крайній випадок — окремий нумерований пункт.

The third part matters most. "Done when…" is what lets the agent check its own work instead of handing it back to you half-finished. Важнее всего третья часть. «Готово, когда…» — именно она позволяет агенту проверить себя, а не возвращать вам недоделанное.Найважливіша третя частина. «Готово, коли…» — саме вона дозволяє агентові перевірити себе, а не повертати вам недороблене.

Step 04 · ModesШаг 04 · РежимыКрок 04 · Режими

Three gears.Три передачи.Три передачі. Shift withПереключайте поПеремикайте через Shift+Tab.

How much freedom the agent gets is a dial you set per task, not a fixed rule. Three modes cover almost everything: Сколько свободы дать агенту — это регулятор, который вы выставляете под задачу, а не жёсткое правило. Три режима закрывают почти всё:Скільки свободи дати агентові — регулятор, який ви виставляєте під завдання, а не жорстке правило. Три режими закривають майже все:

Manual

Asks before every change. Default — and right for anything unfamiliar. Спрашивает перед каждым изменением. По умолчанию — и правильно для всего незнакомого.Питає перед кожною зміною. Типово — і правильно для всього незнайомого.

Plan Mode

Read-only research first: Claude explores and writes a plan you approve before a single edit. Also via /plan. Сначала только чтение: Claude изучает код и пишет план, который вы одобряете прежде, чем будет сделана хоть одна правка. Также через /plan.Спершу лише читання: Claude вивчає код і пише план, який ви схвалюєте ще до першої правки. Також через /plan.

Accept edits

Auto-approves file edits for trusted, well-scoped tasks. You review the full list of changes (the diff) afterwards. Автопринятие правок для доверенных, чётко очерченных задач. Полный список изменений (дифф) проверяете после.Автоприйняття правок для перевірених, чітко окреслених завдань. Повний список змін (диф) переглядаєте потім.

Esc interrupts at any moment — context stays intact. Esc прерывает в любой момент — контекст сохраняется.Esc перериває будь-якої миті — контекст зберігається.

In plain words: Manual asks first, Plan Mode thinks first, Accept edits acts first. You can change your mind at any moment with Shift+Tab. Простыми словами: Manual сначала спрашивает, Plan Mode сначала думает, Accept edits сначала делает. Передумать можно в любой момент — Shift+Tab.Простими словами: Manual спершу запитує, Plan Mode спершу думає, Accept edits спершу робить. Передумати можна будь-якої миті — Shift+Tab.

The current mode is shown above the inputРежим всегда виден над строкой вводаРежим завжди видно над рядком введення
╭────────────────────────────────────────────╮
│ > refactor the checkout flow │
╰────────────────────────────────────────────╯
⏵⏵ accept edits on shift+tab to cycle— переключить— перемкнути
other modes: plan mode on · manual (asks every time)другие режимы: plan mode on · manual (спрашивает каждый раз)інші режими: plan mode on · manual (питає щоразу)
Modes · in practiceРежимы · на практикеРежими · на практиці

Which gearКакая передачаЯка передача for which task.под какую задачу.під яке завдання.

Knowing the three modes is easy; knowing which one to pick is the part that takes a week. Here's that week, compressed: Знать три режима легко; понимать, какой выбрать, — вот на это уходит неделя. Вот эта неделя, сжатая до таблицы:Запам’ятати три режими легко; зрозуміти, який обрати, — на це йде тиждень. Ось цей тиждень, зведений у таблицю:

Manualyour first day in a repo you don't knowпервый день в незнакомом репозиторииперший день у незнайомому репозиторії
Manualanything touching payments, auth or migrationsвсё, что трогает платежи, авторизацию или миграцииусе, що стосується платежів, авторизації чи міграцій
Manualsomeone else's production hotfixчужой хотфикс на продечужий хотфікс на проді
Plan Mode"add OAuth" — big, and you're not sure of the shape«добавить OAuth» — крупно, и форма решения неясна«додати OAuth» — велике, і рішення ще не окреслилося
Plan Modeanything you'd want a second opinion on before startingвсё, где перед стартом хочется второго мненияусе, де перед стартом хочеться поради збоку
Accept editsrename a prop across 40 filesпереименовать проп в 40 файлахперейменувати проп у 40 файлах
Accept editsregenerate fixtures, fix lint, apply a codemodперегенерировать фикстуры, починить линт, применить кодмодперегенерувати фікстури, виправити лінт, застосувати кодмод
Accept editsa task you've already watched it do correctly twiceзадача, которую вы дважды видели сделанной вернозавдання, яке він двічі виконав правильно на ваших очах

One pattern runs through all of it: the less certain you are about what should happen, the more you want it to stop and show you first. Через всё это проходит один принцип: чем меньше вы уверены в том, что должно произойти, тем сильнее вам нужно, чтобы он сначала остановился и показал.Усе це зводиться до одного: що менше ви впевнені, що саме має статися, то потрібніше, щоб він спершу спинився й показав.

Slash commandsSlash-командыSlash-команди

Type /.Наберите /.Наберіть /. The whole cockpit.Весь пульт перед вами.Увесь пульт перед вами.

Slash commands are the control panel of a session: type / and a searchable list appears. The ones worth memorizing, by what they do: Slash-команды — пульт управления сессией: наберите /, и появится список с поиском. Вот те, что стоит запомнить, — по назначению:Slash-команди — пульт керування сесією: наберіть /, і з’явиться список із пошуком. Ось ті, що варто запам’ятати, — за призначенням:

Session & contextСессия и контекстСесія і контекст

/clearfresh start, memory keptчистый старт, память сохраняетсячистий старт, пам’ять зберігається
/compactsummarize long historyсжать длинную историюстиснути довгу історію
/contexthow much memory is used upсколько памяти уже занятоскільки пам’яті вже зайнято
/resumereopen a past sessionвернуться к прошлой сессииповернутися до минулої сесії
/rewindroll back to a checkpointоткатиться к чекпоинтувідкотитися до чекпоінта
/usagewhat this session costsсколько стоит сессияскільки коштує сесія

ConfigurationНастройкаНалаштування

/initgenerate CLAUDE.mdсоздать CLAUDE.mdстворити CLAUDE.md
/memoryedit what it remembersправить памятьредагувати пам’ять
/permissionsapproval rulesправила доступаправила доступу
/modelswitch the modelсменить модельзмінити модель
/mcpmanage tool serversуправлять MCP-серверамикерувати MCP-серверами
/agentsmanage subagentsуправлять субагентамикерувати субагентами

Doing the workРаботаРобота

/planresearch before editsисследование до правокдослідження до правок
/code-reviewreview the diff for bugsревью изменений на багирев’ю змін на баги
/security-reviewcheck for vulnerabilitiesпроверка уязвимостейперевірка вразливостей
/goalwork until a condition holdsработать до условияпрацювати до умови
/looprepeat on a scheduleповторять по расписаниюповторювати за розкладом
/helpeverything elseвсё остальноеусе інше

You can add your own: a markdown file in .claude/commands/ becomes a /command for the whole team. Можно добавлять свои: markdown-файл в .claude/commands/ становится /командой для всей команды.Можна додавати свої: markdown-файл у .claude/commands/ стає /командою для всієї команди.

Slash commands · the rhythmСлэш-команды · ритм работыСлеш-команди · ритм роботи

Nine commands,Девять команд,Дев’ять команд, one working day.один рабочий день.один робочий день.

A list of commands tells you what exists. This tells you the rhythm — which one you reach for, and when. Список команд говорит, что существует. А вот ритм: за какой командой вы тянетесь и в какой момент.Список команд каже, що існує. А ось ритм: до якої команди ви тягнетеся і в який момент.

one working day
$ claude
> /resume 09:10 — pick up yesterday's half-finished ticket09:10 — поднять вчерашний недоделанный тикет09:10 — підняти вчорашній недороблений тикет
> /context 09:12 — 72% full from yesterday. Too much.09:12 — 72% занято со вчера. Многовато.09:12 — 72% зайнято з учора. Забагато.
> /compact 09:12 — squeeze it down, keep the thread09:12 — сжать, но сохранить нить09:12 — стиснути, але зберегти контекст
 
> /clear 11:30 — ticket shipped. New task, clean slate.11:30 — тикет уехал. Новая задача, чистый лист.11:30 — тикет зарелізили. Нове завдання, чистий аркуш.
> /plan 11:31 — this one is big; think before touching code11:31 — задача крупная; подумать до правок11:31 — завдання велике; подумати до правок
> /model 11:45 — plan approved, switch down for the grind11:45 — план принят, переключаюсь вниз на рутину11:45 — план ухвалено, перемикаюся вниз на рутину
 
> /rewind 14:20 — that refactor went sideways. Undo it.14:20 — рефакторинг пошёл не туда. Откатить.14:20 — рефакторинг пішов не туди. Відкотити.
> /code-review 16:40 — read my own diff before anyone else does16:40 — прочитать свой дифф раньше других16:40 — прочитати свій диф раніше за інших
> /cost 17:55 — what did today actually cost?17:55 — во что обошёлся день?17:55 — у що обійшовся день?

Two of these do most of the work: /clear between unrelated tasks, and /context whenever answers start getting vague. Две из них делают большую часть работы: /clear между несвязанными задачами и /context, как только ответы начинают расплываться.Дві з них роблять більшу частину роботи: /clear між непов’язаними завданнями і /context, щойно відповіді починають розпливатися.

Step 05 · CLAUDE.mdШаг 05 · CLAUDE.mdКрок 05 · CLAUDE.md

Give itДайте емуДайте йому a memory.память.пам’ять.

Run /init once — Claude scans the repo and generates CLAUDE.md: your project's build commands, conventions, and architecture. It's loaded into every session, so you never explain the basics twice. Запустите /init один раз — Claude просканирует репозиторий и создаст CLAUDE.md: команды сборки, конвенции и архитектуру проекта. Файл загружается в каждую сессию — базовые вещи не придётся объяснять дважды.Запустіть /init один раз — Claude просканує репозиторій і створить CLAUDE.md: команди збірки, конвенції та архітектуру проєкту. Файл завантажується в кожну сесію — базові речі не доведеться пояснювати двічі.

./CLAUDE.md — team, in gitкоманда, в gitкоманда, у git ~/.claude/CLAUDE.md — you, all projectsлично вы, все проектыособисто ви, всі проєкти CLAUDE.local.md — you, this repo, gitignoredвы, этот репозиторий, вне gitви, цей репозиторій, поза git
/init
> /init
● Scanning: package.json, tsconfig, 214 source files…Сканирую: package.json, tsconfig, 214 файлов исходников…Сканую: package.json, tsconfig, 214 вихідних файлів…
● Found: npm, Next.js 15, Prisma, Vitest, strict TSНашёл: npm, Next.js 15, Prisma, Vitest, strict TSЗнайшов: npm, Next.js 15, Prisma, Vitest, strict TS
✓ Wrote CLAUDE.md — 34 lines. Read it and fix what I got wrong.Создал CLAUDE.md — 34 строки. Прочитайте и поправьте, где я ошибся.Створив CLAUDE.md — 34 рядки. Прочитайте й виправте, де я помилився.
Step 05 · CLAUDE.mdШаг 05 · CLAUDE.mdКрок 05 · CLAUDE.md

What a good oneКак выглядитЯкий вигляд має looks like.хороший файл.хороший файл.

It's a Markdown file in the project root. Four short sections cover most of what Claude needs to know about your repo: Это обычный текстовый файл в корне проекта. Четыре коротких раздела закрывают почти всё, что Claude нужно знать о репозитории:Це звичайний текстовий файл у корені проєкту. Чотири короткі розділи закривають майже все, що Claude треба знати про репозиторій:

CLAUDE.md
# Commands ← how to run, test, and lint the projectкак запускать, тестировать и проверять проектяк запускати, тестувати й перевіряти проєкт
- Dev server: npm run dev · Tests: npm test · Lint: npm run lint
# Architecture ← what lives where in the codebaseчто где лежит в кодовой базещо де лежить у кодовій базі
- Next.js app router · API in src/app/api · DB via Prisma
# Conventions ← how code is written in this teamкак в этой команде принято писать кодяк у цій команді заведено писати код
- TypeScript strict · no default exports · tests next to source
# Gotchas ← easy mistakes worth warning aboutподводные камни, о которых стоит предупредитьпідводні камені, про які варто попередити
- Run npm run db:generate after schema changes
@docs/api-guidelines.md ← an import: pulls another rules file into memoryимпорт: подключает ещё один файл с правиламиімпорт: підключає ще один файл із правилами

Keep it under ~200 lines: Claude reads this file at the start of every session, so every extra line costs attention. Short, specific, ruthlessly pruned. Держите файл короче ~200 строк: Claude читает его в начале каждой сессии, и каждая лишняя строка расходует его внимание. Коротко, конкретно, безжалостно вычищено.Тримайте файл коротшим за ~200 рядків: Claude читає його на початку кожної сесії, і кожен зайвий рядок витрачає його увагу. Коротко, конкретно, безжально вичищено.

CLAUDE.md · good vs badCLAUDE.md · хороший и плохойCLAUDE.md · хороший і поганий

Two files.Два файла.Два файли. One works.Работает один.Працює один.

Almost every weak CLAUDE.md fails the same way: it gives advice instead of facts. Compare. Почти каждый слабый CLAUDE.md проваливается одинаково: он даёт советы вместо фактов. Сравните.Майже кожен слабкий CLAUDE.md провалюється однаково: він дає поради замість фактів. Порівняйте.

Advice — Claude can only agree with itСоветы — с ними можно только согласитьсяПоради — з ними можна лише погодитися

# Rules
- Write clean, maintainable code
- Follow best practices
- Be careful with the database
- Don't break anything
- Use good variable names
# Правила
- Пиши чистый, поддерживаемый код
- Следуй лучшим практикам
- Будь осторожен с базой данных
- Ничего не ломай
- Используй хорошие имена переменных
# Правила
- Пиши чистий, підтримуваний код
- Дотримуйся найкращих практик
- Будь обережний із базою даних
- Нічого не ламай
- Використовуй хороші імена змінних

Facts — Claude can check itself against themФакты — по ним можно себя проверитьФакти — за ними можна себе перевірити

# Rules
- Package manager is pnpm, never npm
- Tests live next to source as *.test.ts
- Run `pnpm db:generate` after editing schema.prisma
- Never edit src/generated/ — it is regenerated
- Dates are stored UTC, rendered in the user's zone
# Правила
- Пакетный менеджер — pnpm, никогда не npm
- Тесты лежат рядом с исходником как *.test.ts
- После правки schema.prisma запусти `pnpm db:generate`
- Не трогай src/generated/ — он перегенерируется
- Даты хранятся в UTC, показываются в зоне пользователя
# Правила
- Пакетний менеджер — pnpm, ніколи не npm
- Тести лежать поруч із джерелом як *.test.ts
- Після правки schema.prisma запусти `pnpm db:generate`
- Не чіпай src/generated/ — він перегенерується
- Дати зберігаються в UTC, показуються в зоні користувача

The test for any line you're about to add: could Claude tell whether it broke this rule? "Write clean code" — no. "Never npm" — yes. A rule it can check beats a rule it can only agree with. Проверка для любой строки, которую вы собираетесь добавить: сможет ли Claude понять, нарушил ли он это правило? «Пиши чистый код» — нет. «Никогда не npm» — да. Правило, которое можно проверить, лучше правила, с которым можно лишь согласиться.Перевірка для будь-якого рядка, який ви збираєтеся додати: чи зможе Claude зрозуміти, чи порушив він це правило? «Пиши чистий код» — ні. «Ніколи не npm» — так. Правило, яке можна перевірити, краще за правило, з яким можна лише погодитися.

Step 05 · RulesШаг 05 · RulesКрок 05 · Rules

Rules: memory,Rules: памятьRules: пам’ять modularized.по модулям.за модулями.

When CLAUDE.md outgrows ~200 lines, don't let it bloat — split it. The .claude/rules/ folder holds focused rule files that load together with CLAUDE.md: security rules, frontend conventions, database guidelines — each in its own small file, easy to review and easy to keep current. Когда CLAUDE.md перерастает ~200 строк, не давайте ему раздуваться — разделите его. Папка .claude/rules/ хранит узкие файлы правил, которые загружаются вместе с CLAUDE.md: правила безопасности, конвенции фронтенда, гайдлайны по базе — каждое в своём небольшом файле, который легко ревьюить и держать актуальным.Коли CLAUDE.md переростає ~200 рядків, не давайте йому роздуватися — розділіть його. Папка .claude/rules/ зберігає вузькі файли правил, що завантажуються разом із CLAUDE.md: правила безпеки, конвенції фронтенду, гайдлайни для бази даних — кожен у своєму невеликому файлі, який легко переглядати й тримати актуальним.

A rule can name the paths it applies to, so frontend rules stay out of the way while Claude works on the backend. Правило может указать пути, к которым оно относится, так что правила фронтенда не мешают, пока Claude работает над бэкендом.Правило може вказати шляхи, до яких воно застосовується, тож правила фронтенду не заважають, поки Claude працює над бекендом.

.claude/rules/
.claude/rules/
├── security.md ← applies to the whole repoдействует на весь репозиторийдіє на весь репозиторій
├── frontend.md ← UI code conventionsконвенции UI-кодаконвенції UI-коду
└── database.md ← migrations & SQL guidelinesмиграции и правила SQLміграції та правила SQL
 
# security.md
- Never log tokens or personal data
- Parameterized queries only
Step 06 · PermissionsШаг 06 · РазрешенияКрок 06 · Дозволи

Guardrails,Ограждения,Огорожі, not handcuffs.а не наручники.а не кайданки.

In settings.json you pre-approve the safe and block the dangerous. Fewer prompts, fewer surprises. Three scopes: user, project (in git), and local. В settings.json вы заранее разрешаете безопасное и блокируете опасное. Меньше вопросов, ноль сюрпризов. Три уровня: пользовательский, проектный (в git) и локальный.У settings.json ви заздалегідь дозволяєте безпечне та блокуєте небезпечне. Менше запитань, нуль сюрпризів. Три рівні: користувацький, проєктний (у git) і локальний.

Manage interactively with /permissions.Управляйте интерактивно через /permissions.Керуйте інтерактивно через /permissions.

In plain words: a list of things it may do without asking, and a list it may never do at all. Простыми словами: список того, что можно делать без вопросов, и список того, чего нельзя никогда.Простими словами: перелік того, що можна робити без запитань, і перелік того, чого не можна ніколи.

.claude/settings.json
{
"permissions": {
"allow": ["Bash(npm run test:*)",
"Bash(npm run lint:*)"],
"deny": ["Read(.env*)",
"Bash(curl *)"]
}
}
Step 06 · PermissionsШаг 06 · РазрешенияКрок 06 · Дозволи

The patternСинтаксисСинтаксис language.правил.правил.

A rule names a tool and a pattern: Tool(pattern). In the pattern, * means "anything from here on" — so Bash(npm run test:*) covers test:unit and test:e2e, and nothing else. Narrow enough to be safe, broad enough to stop the prompts: Правило называет инструмент и шаблон: Tool(шаблон). В шаблоне * значит «что угодно дальше» — поэтому Bash(npm run test:*) покрывает test:unit и test:e2e, и ничего сверх того. Достаточно узко, чтобы быть безопасным, достаточно широко, чтобы вас не спрашивали постоянно: Правило називає інструмент і шаблон: Tool(шаблон). У шаблоні * означає «будь-що далі» — тому Bash(npm run test:*) покриває test:unit і test:e2e, і нічого понад це. Достатньо вузько, щоб бути безпечним, достатньо широко, щоб не питати постійно:

Bash(npm run test)exactly this commandровно эта командасаме ця команда
Bash(npm run test:*)any test:… subcommandлюбая подкоманда test:…будь-яка підкоманда test:…
Edit(src/**)edits inside src onlyправки только внутри srcправки лише всередині src
Read(.env*)every .env file — deny itлюбой .env — в denyбудь-який .env — у deny
WebFetch(domain:*.corp)fetch from one domainзапросы к одному доменузапити до одного домену
mcp__figmaa whole MCP serverцелый MCP-серверцілий MCP-сервер

deny always beats allow — put secrets and destructive commands there. deny всегда сильнее allow — положите туда секреты и разрушительные команды — и спите спокойно. deny завжди сильніший за allow — покладіть туди секрети й руйнівні команди та забудьте про тривогу.

Permissions · a starter setPermissions · стартовый наборPermissions · стартовий набір

Paste this,Вставьте это —Вставте це — stop being asked.и вопросы кончатся.і питання скінчаться.

A working starting point for a typical JavaScript repo. Swap in your own commands, commit it, and the team stops clicking "yes" all day. Рабочая отправная точка для типичного JS-репозитория. Подставьте свои команды, закоммитьте — и команда перестанет весь день нажимать «да».Робоча відправна точка для типового JS-репозиторію. Підставте свої команди, закомітьте — і команда перестане весь день натискати «так».

.claude/settings.json
{
"permissions": {
"allow": [
"Bash(pnpm test:*)",
"Bash(pnpm lint:*)",
"Bash(git status)",
"Bash(git diff *)",
"Edit(src/**)"
],
"deny": [
"Read(**/.env)",
"Read(**/.env.*)",
"Bash(rm -rf *)",
"Bash(git push --force *)"
]
}
}

Allow reads your tests, your linter and git; deny covers secrets and the two commands that are expensive to undo. Note the space in rm -rf * — it forces a word boundary, so the rule can't be dodged by a command that merely starts the same way. В allow — ваши тесты, линтер и git; в deny — секреты и две команды, которые дорого откатывать. Обратите внимание на пробел в rm -rf *: он задаёт границу слова, поэтому правило не обойти командой с тем же началом.В allow — ваші тести, лінтер і git; у deny — секрети та дві команди, які дорого відкочувати. Зверніть увагу на пробіл у rm -rf *: він задає межу слова, тому правило не обійти командою з тим самим початком.

Step 07 · SkillsШаг 07 · СкиллыКрок 07 · Скіли

Teach it yourНаучите его вашимНавчіть його своїх playbook.приёмам.прийомів.

A skill is a reusable procedure in .claude/skills/ — a markdown file with steps Claude follows. Invoke it as /deploy-check, or let Claude pick it up automatically when the task matches. «Скилл» — переиспользуемая процедура в .claude/skills/: markdown-файл с шагами, которым следует Claude. Вызывайте как /deploy-check — или Claude сам применит его, когда задача совпадёт.«Скіл» — багаторазова процедура в .claude/skills/: markdown-файл із кроками, яких дотримується Claude. Викликайте як /deploy-check — або Claude сам застосує його, коли завдання підійде.

The body loads only when used — near-zero context cost. Don't want Claude auto-invoking a skill? Set disable-model-invocation: true — then it runs only by your /command. Загружается только при использовании — почти не тратит контекст. Не хотите автовызова скилла? Поставьте disable-model-invocation: true — тогда он запускается только вашей /командой.Завантажується лише під час використання — майже не витрачає контексту. Не хочете автовиклику скіла? Поставте disable-model-invocation: true — тоді він запускається лише вашою /командою.

.claude/skills/deploy-check/SKILL.md
---
name: deploy-check
description: Pre-deploy checklist
---
1. Run the full test suite
2. Check bundle size vs main
3. Verify env vars in staging
4. Post summary to the PR
 
# usage:использование:використання:
> /deploy-check
✓ 4 steps done — summary posted to PR #2124 шага выполнены — резюме в PR #2124 кроки виконано — резюме в PR #212
Step 08 · SubagentsШаг 08 · СубагентыКрок 08 · Субагенти

Delegate.Делегируйте.Делегуйте. In parallel.Параллельно.Паралельно.

Subagents are specialists in .claude/agents/ — a code reviewer, a security auditor, a test runner. Each one reads and thinks in a separate memory of its own, so a big investigation never clogs up your main conversation. Several can run at once. Субагенты — специалисты в .claude/agents/: ревьюер кода, аудитор безопасности, прогонщик тестов. Каждый читает и думает в отдельной, своей памяти, поэтому большое исследование не забивает вашу основную беседу. Несколько могут работать одновременно.Субагенти — спеціалісти в .claude/agents/: рев’юер коду, аудитор безпеки, виконавець тестів. Кожен читає й думає у власній окремій пам’яті, тому велике дослідження не засмічує вашу основну розмову. Кілька можуть працювати одночасно.

Browse and create them with /agents. Example: "Use the code-reviewer subagent on my current diff while you keep implementing." Смотрите и создавайте через /agents. Пример: «Отдай мой текущий дифф субагенту code-reviewer, а сам продолжай реализацию».Переглядайте і створюйте через /agents. Приклад: «Віддай мій поточний диф субагентові code-reviewer, а сам продовжуй реалізацію.»

In plain words: it hires a temp, hands them one job, and reads only their summary. Простыми словами: он нанимает временного помощника, выдаёт ему одну задачу и читает только его итог.Простими словами: він наймає тимчасового помічника, доручає йому одну справу й читає лише його підсумок.

.claude/agents/code-reviewer.md
---
name: code-reviewer
description: Reviews diffs for bugs
tools: Read, Grep, Glob, Bash
---
You are a senior reviewer.
Hunt for correctness bugs first…
Step 08 · SubagentsШаг 08 · СубагентыКрок 08 · Субагенти

How delegationКак работаетЯк працює works.делегирование.делегування.

Own context windowСвоё контекстное окноВласне контекстне вікно

A subagent reads and thinks in its own context. Your main session gets only the conclusion — not a hundred files of research. Субагент читает и думает в собственном контексте. В вашу основную сессию возвращается только вывод — а не сотня файлов ресёрча.Субагент читає й думає у власному контексті. У вашу основну сесію повертається лише висновок — а не сотня файлів ресерчу.

Auto or explicitСам или по просьбеСам або на прохання

The description field drives auto-delegation. Want an agent on-request only? Say so right in it: "Use only when explicitly asked" — and invoke it by name. Автоделегирование управляется полем description. Нужен агент только по запросу? Так и напишите в нём: «Use only when explicitly asked» — и вызывайте по имени.Автоделегуванням керує поле description. Потрібен агент лише за запитом? Так і напишіть у ньому: «Use only when explicitly asked» — і викликайте за іменем.

In parallelПараллельноПаралельно

Several subagents run at once — reviews, tests, research — while the main agent keeps working. Несколько субагентов работают одновременно — ревью, тесты, ресёрч — пока основной агент продолжает свою задачу.Кілька субагентів працюють одночасно — рев’ю, тести, ресерч — поки основний агент працює далі.

claude — parallel review
> Review this PR in parallel: security, performance, test coverage
● Spawned 3 subagents…Запущено 3 субагента…Запущено 3 субагенти…
● security-reviewer: 1 finding — SQL string concat in search.ts1 находка — SQL-конкатенация в search.ts1 знахідка — SQL-конкатенація в search.ts
● perf-reviewer: OK · test-runner: 2 coverage gaps2 пропуска в покрытии2 прогалини в покритті
✓ Summaries merged — one fix suggested. Apply?Итоги собраны — предложен один фикс. Применить?Підсумки зібрано — запропоновано один фікс. Застосувати?
Step 08 · SubagentsШаг 08 · СубагентыКрок 08 · Субагенти

Anatomy ofАнатомияАнатомія a subagent.субагента.субагента.

Every field is a lever. description decides when Claude delegates on its own. tools is the shortlist of what it's allowed to do — a reviewer needs to read, not to write. model lets you keep the expensive brain for the main work and a cheap one for bulk checks. Каждое поле — рычаг. description решает, когда Claude делегирует сам. tools — короткий список того, что ему разрешено: ревьюеру нужно читать, а не писать. model позволяет держать дорогой мозг для главной работы, а дешёвый — для массовых проверок.Кожне поле — важіль. description вирішує, коли Claude делегує сам. tools — короткий перелік того, що йому дозволено: рев’юеру треба читати, а не писати. model дозволяє тримати дорогий мозок для головної роботи, а дешевий — для масових перевірок.

~/.claude/agents/ — personalличныеособисті .claude/agents/ — team, in gitкомандные, в gitкомандні, у git /agents — manage themуправлениекерування
.claude/agents/security-reviewer.md
---
name: security-reviewer
description: Use after changes to auth,
payments or user input ← when to auto-delegateкогда делегироватьколи делегувати
tools: Read, Grep, Glob ← read-only accessдоступ только на чтениедоступ лише на читання
model: haiku ← cheap for bulk checksдешёвая для массовых проверокдешева для масових перевірок
---
You are a security engineer. ← its system promptего системный промптйого системний промпт
Check the diff against OWASP Top 10…
Step 09 · MCPШаг 09 · MCPКрок 09 · MCP

Plug inПодключитеПідключіть your tools.ваши инструменты.ваші інструменти.

MCP (Model Context Protocol) is a standard plug. Anything that speaks it — Figma, GitHub, Sentry, your database — becomes a tool Claude can use, without anyone writing an integration. Add a server once: the whole team gets it via .mcp.json in the repo. MCP (Model Context Protocol) — стандартный разъём. Всё, что его понимает — Figma, GitHub, Sentry, ваша база данных — становится инструментом Claude, и никому не нужно писать интеграцию. Добавьте сервер один раз: вся команда получит его через .mcp.json в репозитории.MCP (Model Context Protocol) — стандартний роз’єм. Усе, що його розуміє — Figma, GitHub, Sentry, ваша база даних — стає інструментом Claude, і нікому не треба писати інтеграцію. Додайте сервер один раз: уся команда отримає його через .mcp.json у репозиторії.

zsh
$ claude mcp add --transport http github https://api.githubcopilot.com/mcp/
✓ Added — check status anytime with /mcpДобавлено — статус в любой момент через /mcpДодано — статус будь-коли через /mcp
 
# and now this just works:и теперь такое просто работает:і тепер таке просто працює:
> Find our open PRs older than a week and summarize what blocks them
FigmaGitHub SentryJira / Linear SlackPlaywright PostgreSQLGoogle Drive
Step 09 · MCPШаг 09 · MCPКрок 09 · MCP

One file,Один файл —Один файл — the whole team.вся команда.уся команда.

Commit .mcp.json to the repo root and every teammate gets the same tools on their next session — no setup instructions in the wiki, no "works on my machine". Закоммитьте .mcp.json в корень репозитория — и каждый в команде получит те же инструменты в следующей сессии: без инструкций в вики и без «у меня работает». Закомітьте .mcp.json у корінь репозиторію — і кожен у команді отримає ті самі інструменти в наступній сесії: без інструкцій у вікі та без «у мене працює».

Never put a password or key in this file — it's in git, so everyone can read it. Point at an environment variable that each person sets on their own machine. Никогда не кладите пароль или ключ в этот файл — он лежит в git, его прочитают все. Ссылайтесь на переменную окружения, которую каждый задаёт у себя на машине. Ніколи не кладіть пароль чи ключ у цей файл — він лежить у git, його прочитають усі. Посилайтеся на змінну середовища, яку кожен задає на своїй машині.

.mcp.json
{ "mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_TOKEN": "${GITHUB_TOKEN}" }
}, ← local process (stdio)локальный процесс (stdio)локальний процес (stdio)
"sentry": {
"type": "http",
"url": "https://mcp.sentry.dev/mcp"
} ← remote server (http)удалённый сервер (http)віддалений сервер (http)
} }
Step 10 · HooksШаг 10 · ХукиКрок 10 · Хуки

Automation thatАвтоматика, котораяАвтоматика, яка never forgets.никогда не забывает.ніколи не забуває.

Hooks run your scripts at fixed moments of the agent's life: PreToolUse — before an action (validate, block); PostToolUse — after (auto-format, log); Stop — each time Claude finishes replying (quick checks). Deterministic, not "if the model remembers". Хуки запускают ваши скрипты в фиксированные моменты жизни агента: PreToolUse — до действия (проверить, заблокировать), PostToolUse — после (автоформат, лог), Stop — каждый раз, когда Claude закончил отвечать (быстрые проверки). Детерминированно, а не «если модель вспомнит».Хуки запускають ваші скрипти у фіксовані моменти життя агента: PreToolUse — до дії (перевірити, заблокувати), PostToolUse — після (автоформат, лог), Stop — щоразу, коли Claude завершує відповідь (швидкі перевірки). Детерміновано, а не «якщо модель згадає».

That is: it runs every single time, because it's your command — not something the model has to remember to do. То есть: срабатывает каждый раз, потому что это ваша команда, а не то, о чём модель должна вспомнить.Тобто: спрацьовує щоразу, бо це ваша команда, а не те, про що модель має згадати.

settings.json → hooks
{
"hooks": {
"PostToolUse": [{
"matcher": "Edit|Write",
"hooks": [{ "type": "command",
"command": "npm run lint -- --fix" }]
}]
}
}
PreToolUse — before an actionдо действиядо дії PostToolUse — after an actionпосле действияпісля дії UserPromptSubmit — before a prompt is sentдо отправки промптадо надсилання промпту Notification — status alertsуведомления о статусесповіщення про статус Stop — after each replyпосле каждого ответапісля кожної відповіді SessionEnd — when the session closesпри закрытии сессиипісля закриття сесії

More examples: a PreToolUse hook on Bash that blocks force-pushes to main · a SessionEnd hook that runs the test suite as you finish. Ещё примеры: PreToolUse-хук на Bash, блокирующий force-push в main · SessionEnd-хук, прогоняющий тесты при завершении работы.Ще приклади: PreToolUse-хук на Bash, що блокує force-push у main · SessionEnd-хук, що запускає тести під час завершення роботи.

Steps 07–10 · why they existШаги 07–10 · зачем это всёКроки 07–10 · навіщо це все

Four features.Четыре механизма.Чотири механізми. Four things you stop doing.Четыре дела, которых больше нет.Чотири справи, які ви більше не робите.

Skills, subagents, MCP and hooks are the four that sound most abstract. Each one exists to remove one specific chore — here they are as the chore, not the config: Скиллы, субагенты, MCP и хуки звучат абстрактнее всего. Каждый из них существует, чтобы убрать одну конкретную рутину — вот они как рутина, а не как конфиг:Скіли, субагенти, MCP і хуки звучать найабстрактніше. Кожен прибирає одну конкретну рутину — тож показуємо їх через рутину, а не через конфіг:

SkillСкиллСкіл

Before: every release you retype the same eight steps and forget the third one.Было: каждый релиз вы заново диктуете те же восемь шагов и забываете третий.Було: кожен реліз ви наново диктуєте ті самі вісім кроків і забуваєте третій.

/pr-ready/pr-ready/pr-ready

After: tests, lint, review, PR description — one word.Стало: тесты, линт, ревью, описание PR — одним словом.Стало: тести, лінт, рев’ю, опис PR — одним словом.

SubagentСубагентСубагент

Before: you stop writing code to review the last thing you wrote.Было: вы бросаете писать код, чтобы отревьюить только что написанное.Було: ви відриваєтеся від коду, щоб зробити рев’ю щойно написаного.

Have the reviewer read my diff while you keep implementing.Пусть ревьюер читает мой дифф, а ты продолжай реализацию.Хай рев’юер читає мій диф, а ти продовжуй реалізацію.

After: two things at once, one summary back.Стало: два дела сразу, назад — один итог.Стало: дві справи водночас — і один підсумок у відповідь.

MCP

Before: you copy the error out of Sentry and paste it into the chat by hand.Было: вы вручную копируете ошибку из Sentry и вставляете её в чат.Було: ви вручну копіюєте помилку із Sentry і вставляєте її в чат.

What's our top production error this week? Find the cause and open a PR.Какая у нас самая частая ошибка на проде за неделю? Найди причину и открой PR.Яка в нас найчастіша помилка на проді за тиждень? Знайди причину й відкрий PR.

After: it reads Sentry itself.Стало: он сам читает Sentry.Стало: він сам читає Sentry.

HookХукХук

Before: half the pull requests fail CI on formatting nobody ran.Было: половина пул-реквестов валит CI на форматировании, которое никто не прогнал.Було: половина пул-реквестів завалює CI через форматування, яке ніхто не прогнав.

PostToolUse → prettier --writePostToolUse → prettier --writePostToolUse → prettier --write

After: every saved file, formatted. No one has to remember.Стало: каждый сохранённый файл отформатирован. Помнить не нужно.Стало: кожен збережений файл відформатовано. Пам’ятати не треба.

You don't need all four. Most people set up one hook and one skill in the first month and never touch the rest — that alone is worth the afternoon. Все четыре не нужны. Большинство за первый месяц настраивает один хук и один скилл и больше ничего не трогает — уже ради этого стоит потратить полдня.Усі чотири й не потрібні. Більшість за перший місяць налаштовує один хук і один скіл — і більше нічого не чіпає; уже заради цього варто витратити півдня.

ContextКонтекстКонтекст

Context isКонтекст —Контекст — a budget.это бюджет.це бюджет.

Context is everything Claude is holding in mind right now: your CLAUDE.md, every file it has read, and the whole conversation. It's a fixed size, like a whiteboard — and a crowded whiteboard makes a worse agent. Spend it deliberately. Контекст — это всё, что Claude держит в голове прямо сейчас: ваш CLAUDE.md, каждый прочитанный файл и вся переписка. Он фиксированного размера, как доска, — а переполненная доска делает агента хуже. Расходуйте его осознанно.Контекст — це все, що Claude тримає в голові зараз: ваш CLAUDE.md, кожен прочитаний файл і вся розмова. Він фіксованого розміру, як дошка, — а переповнена дошка робить агента гіршим. Витрачайте його свідомо.

/clear

New task, clean slate. CLAUDE.md and memory survive.Новая задача — чистый лист. CLAUDE.md и память сохраняются.Нове завдання — чистий аркуш. CLAUDE.md і пам’ять зберігаються.

/compact

Long session? Summarize the history, keep the essentials.Долгая сессия? Сожмите историю, оставив главное.Довга сесія? Стисніть історію, залишивши головне.

/context

See what's eating the window right now.Посмотрите, что прямо сейчас съедает окно.Погляньте, що зараз з’їдає вікно.

SubagentsСубагентыСубагенти

Send research off to a separate context; keep yours clean.Отправляйте ресёрч в отдельный контекст; свой держите чистым.Віддавайте ресерч в окремий контекст; свій тримайте чистим.

Bonus: start a message with # to save a note to memory instantly — "# deploys are frozen on Fridays". Бонус: начните строку с # — заметка мгновенно уйдёт в память: «# по пятницам деплой заморожен».Бонус: почніть рядок із # — нотатка миттєво піде в пам’ять: «# щоп’ятниці деплой заморожено».

/context
● Context windowКонтекстное окноКонтекстне вікно ████████████░░░░░░░░ 62%
CLAUDE.md + rules 4.1k 2%
files read this sessionфайлы, прочитанные в сессиифайли, прочитані в сесії 86k 43%
conversationперепискарозмова 34k 17%
→ next task unrelated? /clear beats /compact hereследующая задача не связана? тут /clear лучше /compactнаступне завдання не пов’язане? тут /clear краще за /compact
Clear or compact?Clear или compact?Clear чи compact?

A rule you can followПравило, которое сработаетПравило, яке згадаєте at 11pm.и в одиннадцать вечера.навіть об одинадцятій вечора.

Four commands manage the agent's memory, and picking between them is the single most common beginner hesitation. The whole decision: Памятью агента управляют четыре команды, и выбор между ними — самое частое замешательство новичка. Всё решение целиком:Пам’яттю агента керують чотири команди, і вибір між ними — найчастіше вагання новачка. Ось усе, що треба знати:

/clearthe next task has nothing to do with this oneследующая задача никак не связана с этойнаступне завдання ніяк не пов’язане з цим
/clearit started ignoring a rule you gave it earlierон начал игнорировать правило, которое вы дали раньшевін почав ігнорувати правило, яке ви дали раніше
/clearthe answers got vague, generic or slightly wrongответы стали расплывчатыми, общими или слегка невернымивідповіді стали нечіткими, загальними чи трохи хибними
/compactsame task, but the conversation got longзадача та же, но переписка стала длиннойзавдання те саме, але розмова стала довгою
/resumeyou want yesterday's thread backнужно вернуть вчерашнюю нитьтреба повернути вчорашню розмову
/rewindyou want the last few edits undoneнужно откатить несколько последних правоктреба відкотити кілька останніх правок

The difference in one line: /compact keeps the thread and drops the detail; /clear drops everything except your CLAUDE.md. When in doubt, /clear — starting fresh costs you one sentence of re-explaining, and a crowded context costs you every answer after it. Разница в одну строку: /compact сохраняет нить и выбрасывает детали; /clear выбрасывает всё, кроме вашего CLAUDE.md. Сомневаетесь — /clear: начать заново стоит одного предложения объяснений, а забитый контекст портит каждый следующий ответ.Різниця в один рядок: /compact зберігає суть розмови й викидає деталі; /clear викидає все, крім вашого CLAUDE.md. Вагаєтеся — /clear: почати заново коштує одного речення пояснень, а забитий контекст псує кожну наступну відповідь.

ModelsМоделиМоделі

Pick the brainМозг —Мозок — for the job.под задачу.під завдання.

Claude Code runs on the Claude model family. They differ in depth of reasoning, speed, and price — and you can switch at any moment with /model: Claude Code работает на семействе моделей Claude. Они различаются глубиной рассуждений, скоростью и ценой — и переключаются в любой момент командой /model:Claude Code працює на родині моделей Claude. Вони різняться глибиною міркувань, швидкістю та ціною — і перемикаються будь-коли командою /model:

Fable 5

The heavyweightТяжеловесВажковаговик

Top output quality for the hardest problems: gnarly architecture, subtle bugs, critical decisions. Максимальное качество для самых сложных задач: запутанная архитектура, тонкие баги, критичные решения.Максимальна якість для найскладніших завдань: заплутана архітектура, тонкі баги, критичні рішення.

Opus 4.8

Deep reasoningГлубокие рассужденияГлибокі міркування

Complex planning, large refactors, research across a big codebase. Сложное планирование, крупные рефакторинги, ресёрч по большой кодовой базе.Складне планування, великі рефакторинги, ресерч у великій кодовій базі.

Sonnet 5 · defaultпо умолчаниютипово

The daily driverРабочая лошадкаРобоча конячка

Everyday coding at a balance of speed, capability, and cost. Start here. Повседневная разработка с балансом скорости, качества и цены. Начинайте с неё.Повсякденна розробка з балансом швидкості, якості та ціни. Починайте з неї.

Haiku 4.5

Fast & lightБыстрая и лёгкаяШвидка й легка

Quick edits and lightweight subagents in bulk — cheapest and fastest. Быстрые правки и массовые лёгкие субагенты — дешевле и быстрее всех.Швидкі правки та масові легкі субагенти — найдешевша й найшвидша з усіх.

Architecture decision →Архитектурное решение →Архітектурне рішення → Fable 5 Big refactor →Крупный рефакторинг →Великий рефакторинг → Opus 4.8 Everyday feature →Обычная фича →Звичайна фіча → Sonnet 5 Batch of small fixes →Пачка мелких правок →Низка дрібних правок → Haiku 4.5

Example: /model fable · /model opus · set a default in settings.json ("model") · give each subagent its own model in its frontmatter. Пример: /model fable · /model opus · значение по умолчанию задаётся в settings.json (ключ model) · каждому субагенту можно назначить свою модель в frontmatter.Приклад: /model fable · /model opus · типове значення задається в settings.json («model») · кожному субагентові можна призначити свою модель у frontmatter.

Switching mid-task costs nothingПереключение посреди задачи ничего не стоитПеремикання посеред роботи нічого не коштує
> /model opus
✓ Now using Opus 4.8 — context is preservedТеперь Opus 4.8 — контекст сохранёнТепер Opus 4.8 — контекст збережено
> now think through the caching architecture with me
 
# …and back to the cheap one for the mechanical part…и обратно на дешёвую для механической части…і назад на дешеву для механічної частини
> /model haiku
The big pictureОбщая картинаЗагальна картина

Four layers.Четыре уровня.Чотири рівні. The closest wins.Побеждает ближайший.Перемагає найближчий.

Everything you've configured — memory, settings, rules, skills, agents — lives at one of four levels. They stack: broader levels set defaults, more specific levels override them. Всё, что вы настроили, — память, настройки, правила, скиллы, агенты — живёт на одном из четырёх уровней. Они складываются: широкие уровни задают базу, более конкретные её переопределяют.Усе, що ви налаштували — пам’ять, налаштування, правила, скіли, агенти — живе на одному з чотирьох рівнів. Вони нашаровуються: ширші рівні задають базу, конкретніші її перевизначають.

L1

OrganizationОрганизацияОрганізація

Deployed by IT for the whole company: managed settings and org-wide CLAUDE.md. Always takes priority. Разворачивает IT-отдел на всю компанию: managed-настройки и общий CLAUDE.md. Всегда в приоритете.Розгортає ІТ-відділ на всю компанію: managed-налаштування і спільний CLAUDE.md. Завжди в пріоритеті.

L2 · ~/.claude/

UserПользовательКористувач

Your personal defaults for all projects: CLAUDE.md, settings.json, your own skills and agents. Ваши личные значения по умолчанию для всех проектов: CLAUDE.md, settings.json, свои скиллы и агенты.Ваші особисті типові налаштування для всіх проєктів: CLAUDE.md, settings.json, власні скіли та агенти.

L3 · .claude/

ProjectПроектПроєкт

Committed to git, shared by the team: CLAUDE.md, settings, rules, skills, agents, .mcp.json. Коммитится в git, общее для команды: CLAUDE.md, настройки, правила, скиллы, агенты, .mcp.json.Комітиться в git, спільне для команди: CLAUDE.md, налаштування, правила, скіли, агенти, .mcp.json.

L4 · *.local

LocalЛокальныйЛокальний

Personal overrides for this repo, gitignored: settings.local.json, CLAUDE.local.md. Личные переопределения для этого репозитория, вне git: settings.local.json, CLAUDE.local.md.Особисті перевизначення для цього репозиторію, поза git: settings.local.json, CLAUDE.local.md.

Conflict? The more specific level wins — except managed org policies, which can't be overridden. Конфликт? Побеждает более конкретный уровень — кроме managed-политик организации: их переопределить нельзя.Конфлікт? Перемагає конкретніший рівень — крім managed-політик організації: їх перевизначити не можна.

A real conflict, resolvedРеальный конфликт и его разрешениеРеальний конфлікт і його розв’язання
L2 ~/.claude/settings.json "model": "sonnet"
L3 .claude/settings.json "model": "haiku"
L4 .claude/settings.local.json "model": "opus" ← winsпобеждаетперемагає
 
L1 managed-settings.json "permissions.deny": ["Bash(curl *)"]
✗ a project allow for curl is ignored — managed deny is finalпроектный allow на curl игнорируется — managed deny окончателенпроєктний allow на curl ігнорується — managed deny остаточний
Chapter 02 · RecapГлава 02 · ИтогРозділ 02 · Підсумок

You're configuredВы настроеныВи налаштовані like a pro.как профи.як профі.

✓Installed & signed inУстановлен и авторизованВстановлено й авторизовано
✓CLAUDE.md by /init + modular rulesCLAUDE.md через /init + модульные правилаCLAUDE.md через /init + модульні правила
✓Permissions tuned in settings.jsonРазрешения настроены в settings.jsonДозволи налаштовано в settings.json
✓Skills for repeatable workflowsСкиллы для повторяемых процессовСкіли для повторюваних процесів
✓Subagents for specialist workСубагенты для задач специалистовСубагенти для спеціалізованої роботи
✓MCP servers connectedMCP-серверы подключеныMCP-сервери підключено
✓Routine automated with hooksХуки автоматизируют рутинуХуки автоматизують рутину
✓Context habits: /clear · /compactГигиена контекста: /clear · /compactГігієна контексту: /clear · /compact
✓4 config layers understoodВы знаете 4 уровня конфигурацииВи знаєте 4 рівні конфігурації
✓Team config committed to gitКомандный конфиг закоммичен в gitКомандний конфіг закомічено в git

And it's all files in your repo — configuration is a team asset. И всё это — файлы в вашем репозитории: конфигурация — командный актив.І все це — файли у вашому репозиторії: конфігурація — командний актив.

PLAYBOOKS · PLAYBOOKS · PLAYBOOKS · PLAYBOOKS · PLAYBOOKS · PLAYBOOKS · PLAYBOOKS ·
CHAPTER 03

One tool,Один инструмент —Один інструмент — every role.каждая роль.кожна роль.

Developers, designers, product people — same agent, different superpowers. Разработчики, дизайнеры, продакты — агент один, суперсилы разные.Розробники, дизайнери, продакти — агент один, суперсили різні.

Playbook · DeveloperСценарий · РазработчикСценарій · Розробник

From ticketОт тикетаВід тикета to pull request.до pull request.до pull request.

1

Paste the ticketВставьте тикетВставте тикет

Requirements, links, screenshots — straight into the prompt.Требования, ссылки, скриншоты — прямо в промпт.Вимоги, посилання, скріншоти — одразу в промпт.

2

Plan Mode

Claude explores the code and proposes a plan. You approve it.Claude изучает код и предлагает план. Вы утверждаете.Claude вивчає код і пропонує план. Ви затверджуєте.

3

Implement + testsРеализация + тестыРеалізація + тести

It writes the code, runs the suite, fixes what fails.Он пишет код, гоняет тесты и чинит упавшее.Він пише код, ганяє тести й лагодить те, що впало.

4

Ship the PRОтправьте PRНадішліть PR

Branch, commits, and a pull request — the bundle of changes you hand the team to review — one prompt away.Ветка, коммиты и PR (pull request — набор изменений, отправленный команде на ревью) — по одной просьбе.Гілка, коміти та PR (pull request — набір змін на рев’ю команді) — за одним проханням.

Also great at: debugging from a stack trace, surgical refactors, migrations, and running /code-review before merge. А ещё: дебаг по стектрейсу, точечные рефакторинги, миграции и /code-review перед мержем.А ще: дебаг за стектрейсом, точкові рефакторинги, міграції та /code-review перед мержем.

The four steps as one sessionЧетыре шага одной сессиейЧотири кроки однією сесією
> JIRA-482: users can't remove the last payment method.
Expected: block it with a clear error. Plan first.
● plan mode 3 steps: guard in service, error copy, 2 tests. Approve?3 шага: гард в сервисе, текст ошибки, 2 теста. Утвердить?3 кроки: гард у сервісі, текст помилки, 2 тести. Затвердити?
> approved
● edited billing.service.ts, messages.ts · added 2 testsизменил billing.service.ts, messages.ts · добавил 2 тестазмінив billing.service.ts, messages.ts · додав 2 тести
● npm test → 63/63 ✓ · /code-review → 0 findings
✓ PR #512 opened, JIRA-482 linkedОткрыт PR #512, JIRA-482 привязанВідкрито PR #512, JIRA-482 зв’язано
Playbook · DeveloperСценарий · РазработчикСценарій · Розробник

Your first hourПервый часПерша година in unfamiliar code.в незнакомом коде.у незнайомому коді.

New job, new team, or just a service nobody has touched in two years. This is the one task where an agent saves the most time, because orientation is pure reading. Новая работа, новая команда — или просто сервис, к которому два года никто не прикасался. Именно здесь агент экономит больше всего времени: ориентирование — это чистое чтение.Нова робота, нова команда — або просто сервіс, якого два роки ніхто не чіпав. Саме тут агент заощаджує найбільше часу: орієнтування — це чисте читання.

Four questions, in this orderЧетыре вопроса именно в этом порядкеЧотири запитання саме в цьому порядку
> Give me a map of this repo: what are the main pieces, and
how does a request travel through them?
 
> Which files change most often in the last year? Show the top 10.
that's where the real work happens — and the real riskименно там идёт настоящая работа — и там же настоящий рисксаме там іде справжня робота — і там-таки справжній ризик
 
> What conventions does this codebase follow that I'd only
learn by getting them wrong in review?
 
> Now write that up as a CLAUDE.md so the next person — and you —
start from here instead of from nothing.

The last one turns an hour of orientation into a file the whole team keeps. It's also the easiest honest way to contribute something on your first day. Последний вопрос превращает час ориентирования в файл, который остаётся у всей команды. И это самый честный способ принести пользу в первый же день.Останнє питання перетворює годину орієнтування на файл, який лишається в усієї команди. І це найчесніший спосіб принести користь першого ж дня.

Playbook · DeveloperСценарий · РазработчикСценарій · Розробник

Debugging,ДебагДебаг minus the grind.без мучений.без мук.

Paste the error exactly as you see it — stack trace and all. The stack trace is the list of function calls the error fell through; it's the most useful part, so don't trim it. Claude reads the code around it and hunts for the cause, not just the symptom: Вставьте ошибку как есть — вместе со стектрейсом. Стектрейс — это список вызовов функций, через которые провалилась ошибка; это самая полезная часть, не обрезайте её. Claude прочитает код вокруг неё и найдёт причину, а не только симптом:Вставте помилку як є — разом зі стектрейсом. Стектрейс — це список викликів функцій, якими пройшла помилка; це найкорисніша частина, не обрізайте її. Claude прочитає код довкола неї та знайде причину, а не лише симптом:

claude — api-service
> Production error, ~50/hour. Find the cause and fix it:
TypeError: Cannot read properties of undefined (reading 'userId')
at SessionService.refresh (session.ts:214)
 
● Tracing callers of refresh()… found a race: token renewalИщу вызовы refresh()… нашёл гонку: обновление токенаШукаю виклики refresh()… знайшов гонку: оновлення токена
fires after logout clears the session.срабатывает после того, как logout очистил сессию.спрацьовує після того, як logout очистив сесію.
● Fix + regression test added.Фикс + регрессионный тест добавлены.Фікс + регресійний тест додано.
✓ Suite green. Want a summary for the incident channel?Тесты зелёные. Сделать резюме для канала инцидентов?Тести зелені. Зробити резюме для каналу інцидентів?
Playbook · DeveloperСценарий · РазработчикСценарій · Розробник

Three waysТри способаТри способи to open a bug.начать разбор бага.почати розбір бага.

Bugs arrive in three shapes, and each one wants a different opening move. All three share a rule: say what you want found, not what you want changed. Баги приходят в трёх видах, и каждый требует своего первого хода. Общее правило у всех трёх одно: говорите, что нужно найти, а не что нужно поменять.Баги бувають трьох видів, і кожен потребує свого першого ходу. Спільне правило в усіх трьох одне: кажіть, що треба знайти, а не що треба змінити.

A crash · a flaky test · something slowПадение · нестабильный тест · медленно работаетПадіння · нестабільний тест · повільно працює
# 1 — you have a stack trace: paste it whole, ask for the causeесть стектрейс: вставьте целиком, просите причинує стектрейс: вставте цілком, просіть причину
> [full stack traceполный стектрейсповний стектрейс] Find the root cause, not the symptom.
Explain what's happening before you change anything.
 
# 2 — it fails sometimes: make it fail on purposeпадает через раз: заставьте его упасть намереннопадає через раз: змусьте його впасти навмисно
> auth.spec.ts passes locally but fails on CI about 1 run in 5.
Run it 20 times and find the shared state between runs.
 
# 3 — it's slow: measure first, forbid guessingтормозит: сначала измерить, гадать запретитьгальмує: спершу виміряти, вгадувати заборонити
> The dashboard takes 4s to load. Profile it and show me the
three biggest costs before changing anything.

"Before changing anything" is the most useful four words here. Without them an agent will happily fix its first guess, and you'll never learn which cost mattered. «Прежде чем что-то менять» — самые полезные слова на этом слайде. Без них агент с радостью починит свою первую догадку, и вы так и не узнаете, что именно тормозило.«Перш ніж щось міняти» — найкорисніші слова на цьому слайді. Без них агент радо полагодить те, що вгадав першим, і ви так і не дізнаєтеся, що саме гальмувало.

Playbook · DeveloperСценарий · РазработчикСценарій · Розробник

ReviewingРевьюРев’ю someone else's PR.чужого пул-реквеста.чужого пул-реквеста.

Reviewing is reading, and reading a thousand-line diff carefully is exactly the task attention fails at. Let it do the first pass; you do the judgement. Ревью — это чтение, а внимательно прочесть дифф на тысячу строк — ровно та задача, где внимание отказывает. Первый проход отдайте ему, решения оставьте себе.Рев’ю — це читання, а уважно прочитати диф на тисячу рядків — саме та робота, де увага підводить. Перший прохід віддайте йому, рішення лишіть собі.

The first pass, in thirty secondsПервый проход за тридцать секундПерший прохід за тридцять секунд
> Review PR #488. I care about three things, in this order:
does it do what the ticket asked · does it break anything
that isn't covered by a test · is anything here hard to
change later. Skip style — the linter owns that.
 
● read the ticket, the diff (14 files), and the tests it touchesпрочитал тикет, дифф (14 файлов) и затронутые тестыпрочитав тикет, диф (14 файлів) і зачеплені тести
✓ Does what JIRA-611 asked, including the edge case in the ACДелает то, что просили в JIRA-611, включая краевой случай из ACРобить те, що просили в JIRA-611, включно з крайнім випадком із AC
⚠ retryPayment() is now called from two places; only one is testedretryPayment() теперь вызывается из двух мест; протестировано одноretryPayment() тепер викликається з двох місць; протестовано одне
⚠ the new config is read at import time — hard to change without a restartновый конфиг читается при импорте — не поменять без рестартановий конфіг читається під час імпорту — не змінити без рестарту
→ two questions worth asking the author. Nothing blocking.два вопроса, которые стоит задать автору. Ничего блокирующего.два питання, які варто поставити автору. Нічого блокувального.

Naming your priorities in order is what makes this useful. Ask for "a review" and you get style nits; ask for these three and you get the two questions actually worth someone's time. Полезным это делает то, что вы назвали приоритеты по порядку. Попросите «ревью» — получите придирки к стилю; попросите эти три вещи — получите два вопроса, ради которых стоит отвлекать человека.Усе вирішує те, що ви назвали пріоритети по черзі. Попросіть «рев’ю» — отримаєте причіпки до стилю; попросіть ці три речі — отримаєте два питання, заради яких варто відривати людину.

Playbook · DesignerСценарий · ДизайнерСценарій · Дизайнер

From Figma frameИз макета в FigmaЗ макета в Figma to living code.в живой код.у живий код.

Design → codeДизайн → кодДизайн → код

Connect Figma, paste a frame link — get that block rebuilt as real code in whatever framework your product uses. Подключите Figma, вставьте ссылку на фрейм — получите этот блок, собранный настоящим кодом на том фреймворке, что у вас в продукте.Підключіть Figma, вставте посилання на фрейм — отримаєте цей блок, зібраний справжнім кодом на тому фреймворку, що у вас у продукті.

Code → designКод → дизайнКод → дизайн

Push an existing screen back into Figma to iterate with the team. Отправьте существующий экран обратно в Figma, чтобы итерировать с командой.Надішліть наявний екран назад у Figma, щоб ітерувати з командою.

Live iterationЖивая итерацияЖива ітерація

With browser tools Claude sees the rendered page: "tighten the spacing, fix the contrast" — and it does. Через браузерные инструменты Claude видит отрендеренную страницу: «поправь отступы и контраст» — и он правит.Через браузерні інструменти Claude бачить відрендерену сторінку: «поправ відступи й контраст» — і він править.

No more "waiting for a free engineer" to see your idea made real. Больше не нужно «ждать свободного разработчика», чтобы увидеть идею вживую.Більше не треба «чекати вільного розробника», щоб побачити ідею наживо.

Example prompt: "Here's the frame: [figma link]. Build it as a React component with our tokens, then screenshot it and compare against the design." Пример промпта: «Вот фрейм: [ссылка на Figma]. Собери его как React-компонент на наших токенах, потом сделай скриншот и сравни с макетом».Приклад промпта: «Ось фрейм: [посилання на Figma]. Збери його як React-компонент на наших токенах, потім зроби скріншот і порівняй із макетом».

Design → code, with the check built inДизайн → код, с проверкой внутриДизайн → код, із перевіркою всередині
> figma.com/design/…/Pricing?node-id=42-118
Build it as a React component using our design tokens.
● mcp figma read frame: 3 tiers, 8/12/16 spacing scaleпрочитал фрейм: 3 тарифа, шкала отступов 8/12/16прочитав фрейм: 3 тарифи, шкала відступів 8/12/16
● created PricingTable.tsx — tokens, no hard-coded hexсоздал PricingTable.tsx — токены, без хардкода цветовстворив PricingTable.tsx — токени, без хардкоду кольорів
● rendered it, screenshotted, compared to the frameотрендерил, снял скриншот, сравнил с фреймомвідрендерив, зняв скріншот, порівняв із фреймом
✓ Matches, except the badge — Figma has a 6px radius, our token is 8px. Which wins?Совпадает, кроме бейджа — в Figma радиус 6px, наш токен 8px. Что главнее?Збігається, крім бейджа — у Figma радіус 6px, наш токен 8px. Що головніше?
Playbook · DesignerСценарий · ДизайнерСценарій · Дизайнер

Four promptsЧетыре промптаЧотири промпти past the handoff.после передачи макета.після передачі макета.

Handing the frame over used to be where your control ended. These four are the checks you always wanted to run afterwards and never had time for: Раньше контроль заканчивался в момент передачи макета. Эти четыре — те самые проверки, которые всегда хотелось сделать потом и на которые не было времени:Раніше контроль закінчувався в момент передачі макета. Ці чотири — саме ті перевірки, які завжди хотілося зробити потім і на які не було часу:

Find the driftНайти расхожденияЗнайти розходження

Where did the build stop using your tokens?Где сборка перестала использовать ваши токены?Де збірка перестала використовувати ваші токени?

Find every hard-coded colour and spacing value in src/components. For each, tell me the nearest token it should be using.Найди в src/components все цвета и отступы, прописанные вручную. Для каждого укажи ближайший токен, который следовало использовать.Знайди в src/components усі кольори й відступи, прописані вручну. Для кожного вкажи найближчий токен, який слід було використати.

Design the states nobody drewНарисовать состояния, которых нет в макетеНамалювати стани, яких немає в макеті

Empty, loading and error are where products actually feel broken.«Пусто», «загрузка» и «ошибка» — там продукт и ощущается сломанным.«Порожньо», «завантаження» та «помилка» — саме там продукт і здається зламаним.

This table only has a filled state. Build the empty, loading and error states to match it, and show me all four side by side.У этой таблицы есть только заполненное состояние. Собери «пусто», «загрузку» и «ошибку» в том же стиле и покажи все четыре рядом.У цієї таблиці є лише заповнений стан. Збери «порожньо», «завантаження» та «помилку» в тому ж стилі й покажи всі чотири поруч.

Check it at real widthsПроверить на реальных ширинахПеревірити на реальних ширинах

The layout you drew at 1440 is not the layout people get.Макет, нарисованный на 1440, — не тот макет, который видят люди.Макет, намальований на 1440, — не той макет, який бачать люди.

Screenshot this page at 390, 768 and 1440 wide. Tell me everything that overflows, wraps badly, or loses its alignment.Сделай скриншоты страницы на ширине 390, 768 и 1440. Скажи, что вылезает, плохо переносится или теряет выравнивание.Зроби скріншоти сторінки на ширині 390, 768 і 1440. Скажи, що вилазить, погано переноситься або втрачає вирівнювання.

Make one component the standardСделать один компонент эталономЗробити один компонент еталоном

Consistency is a search problem, and search costs nothing now.Консистентность — это задача поиска, а поиск теперь ничего не стоит.Консистентність — це питання пошуку, а пошук тепер нічого не коштує.

Button.tsx is our correct button. List every other button in the app that differs from it, and say how each one differs.Button.tsx — наша правильная кнопка. Перечисли все остальные кнопки в приложении, которые от неё отличаются, и укажи, чем именно.Button.tsx — наша правильна кнопка. Перелічи всі інші кнопки в застосунку, що від неї відрізняються, і вкажи, чим саме.
Playbook · DesignerСценарий · ДизайнерСценарій · Дизайнер

Prototypes inПрототипы заПрототипи за minutes.минуты.хвилини.

Ask in plain words — you get a file you can open in a browser, click through, and share: Попросите обычными словами — и получите файл, который можно открыть в браузере, прокликать и переслать коллегам:Попросіть звичайними словами — і отримаєте файл, який можна відкрити в браузері, проклацати й переслати колегам:

claude
> Here's a reference I love: awwwards-site.com [+ screenshot]
Build a draft of OUR landing in this style — same mood,
but our content, colors and logo. One HTML file.
 
● Analyzed the reference: dark theme, oversized type, glass cards…Разобрал референс: тёмная тема, огромная типографика, стеклянные карточки…Розібрав референс: темна тема, величезна типографіка, скляні картки…
✓ landing-draft.html — open next to the reference and compareоткройте рядом с референсом и сравнитевідкрийте поруч із референсом і порівняйте
 
> Hero type +20%, try our coral as the accent
✓ Updated — iterate until it feels rightОбновлено — итерируйте, пока не станет идеальноОновлено — ітеруйте, доки не стане ідеально

Also: find every place where a colour or a spacing value was hard-coded instead of using your design tokens, generate the empty, error and loading states, check colour contrast — with receipts. А ещё: найти каждое место, где цвет или отступ прописан вручную вместо дизайн-токена, сгенерировать состояния «пусто», «ошибка» и «загрузка», проверить контраст цветов — с доказательствами.А ще: знайти кожне місце, де колір чи відступ прописано вручну замість дизайн-токена, згенерувати стани «порожньо», «помилка» та «завантаження», перевірити контраст кольорів — з доказами.

Playbook · DesignerСценарий · ДизайнерСценарій · Дизайнер

Say it the way you'dГоворите так, как сказали быКажіть так, як сказали б say it to a junior.джуниору.джуніору.

Designers worry their feedback is "too vague" for a machine. It isn't. Vague direction plus fast iteration is exactly how design review already works — and here you can see what each phrase turned into. Дизайнеры боятся, что их правки «слишком расплывчаты» для машины. Это не так. Нечёткое направление плюс быстрые итерации — ровно так и работает дизайн-ревью, только здесь видно, во что превратилась каждая фраза.Дизайнери бояться, що їхні правки «надто нечіткі» для машини. Це не так. Нечіткий напрямок плюс швидкі ітерації — саме так і працює дизайн-рев’ю, тільки тут видно, на що перетворилася кожна фраза.

Your words → what actually changedВаши слова → что реально изменилосьВаші слова → що реально змінилося
> make it feel calmer
● accent colours 4 → 2 · animation 400ms → 200ms · shadows softenedакцентных цветов 4 → 2 · анимация 400ms → 200ms · тени мягчеакцентних кольорів 4 → 2 · анімація 400ms → 200ms · тіні м’якші
 
> the hero is shouting at me
● headline 72px → 60px · weight 800 → 700 · letter-spacing relaxedзаголовок 72px → 60px · насыщенность 800 → 700 · трекинг свободнеезаголовок 72px → 60px · насиченість 800 → 700 · трекінг вільніший
 
> it looks cramped
● section padding 8 → 12 on the scale · line-height 1.4 → 1.6отступы секций 8 → 12 по шкале · межстрочный 1.4 → 1.6відступи секцій 8 → 12 за шкалою · міжрядковий 1.4 → 1.6
 
> I can't read the caption
● contrast 3.1:1 → 5.4:1 · now passes WCAG AA for small textконтраст 3.1:1 → 5.4:1 · теперь проходит WCAG AA для мелкого текстаконтраст 3.1:1 → 5.4:1 · тепер проходить WCAG AA для дрібного тексту

Read what it actually changed: it is naming the decisions you would have made yourself. If it guesses wrong, say so — that's a second sentence, not a lost afternoon. Прочитайте, что именно он изменил: он называет ровно те решения, которые вы приняли бы сами. Если он угадал неверно, скажите об этом — это ещё одна фраза, а не потерянные полдня.Прочитайте, що саме він змінив: він називає саме ті рішення, які ви ухвалили б самі. Якщо він угадав неправильно, скажіть про це — це ще одна фраза, а не втрачені півдня.

Playbook · DesignerСценарий · ДизайнерСценарій · Дизайнер

Accessibility,Доступность,Доступність, with receipts.с доказательствами.з доказами.

Accessibility work is mostly measurement, and measurement is the part a machine is genuinely better at. You still make every judgement call — it just brings you the numbers. Работа над доступностью — это в основном измерения, а измерять машина умеет действительно лучше. Все решения по-прежнему за вами: он лишь приносит цифры.Робота над доступністю — це здебільшого вимірювання, а вимірювати машина вміє справді краще. Усі рішення й далі за вами: він лише приносить цифри.

One prompt, a full auditОдин промпт — полный аудитОдин промпт — повний аудит
> Audit our checkout page for accessibility. For every issue give
me the measured value, the required value, and the file to fix.
 
✗ contrastконтрастконтраст placeholder textтекст плейсхолдератекст плейсхолдера 2.8:1 → needsнужнотреба 4.5:1 Input.tsx:34
✗ targetобластьобласть "remove item" buttonкнопка «удалить»кнопка «видалити» 18px → needsнужнотреба 24px CartRow.tsx:71
✗ focusфокусфокус 4 fields have no visible focus ringу 4 полей нет видимого фокусау 4 полів немає видимого фокуса forms.css
✗ labelsподписипідписи the promo code input has noneу поля промокода нет подписиу поля промокоду немає підпису Promo.tsx:12
✓ orderпорядокпорядок tab order follows the visual layoutпорядок табов совпадает с вёрсткойпорядок табів збігається з версткою

Ask for the measured number every time. "This has poor contrast" starts an argument; "2.8:1 where 4.5:1 is required" ends one. Всегда просите измеренное число. «Тут плохой контраст» начинает спор; «2.8:1 при требуемых 4.5:1» его заканчивает.Завжди просіть виміряне число. «Тут поганий контраст» починає суперечку; «2.8:1 за потрібних 4.5:1» її завершує.

Live example · built for this courseЖивой пример · сделан для этого курсаЖивий приклад · зроблено для цього курсу

We asked.Мы попросили —Ми попросили — It built.он собрал.він зібрав.

This is a real, unedited result — an interactive one-page site about AI: a living neural network that follows your cursor, scramble typography, animated counters, a timeline. One prompt. One file. Zero dependencies. Это настоящий результат без ретуши — интерактивный одностраничник про ИИ: живая нейросеть, следящая за курсором, scramble-типографика, анимированные счётчики, таймлайн. Один промпт. Один файл. Ноль зависимостей.Це справжній результат без ретуші — інтерактивний односторінковик про ШІ: жива нейромережа, що стежить за курсором, scramble-типографіка, анімовані лічильники, таймлайн. Один промпт. Один файл. Нуль залежностей.

Open SYNAPSE — the live demo →Открыть SYNAPSE — живое демо →Відкрити SYNAPSE — живе демо →
synapse-demo.html
✓ synapse-demo.html — one passодин прохододин прохід
 
· a neural network that follows the cursorнейросеть, следящая за курсоромнейромережа, що стежить за курсором
· an attention map you can probeкарта внимания, которую можно потрогатькарта уваги, яку можна дослідити
· a temperature dial over a live softmaxползунок температуры над живым softmaxповзунок температури над живим softmax
 
✓ 0 dependencies · works offline0 зависимостей · работает офлайн0 залежностей · працює офлайн
Playbook · Manager / POСценарий · Менеджер / POСценарій · Менеджер / PO

Ask the codebaseСпросите кодовую базуСпитайте кодову базу anything.о чём угодно.про що завгодно.

"What does this service actually do?"«Что на самом деле делает этот сервис?»«Що насправді робить цей сервіс?»

Readable summaries of any repo, feature, or dependency — no engineer interrupted. Понятные резюме любого репозитория, фичи или зависимости — без единого вопроса к инженерам.Зрозумілі резюме будь-якого репозиторію, фічі чи залежності — не відволікаючи інженерів.

"Is feature X really done?"«Фича X правда готова?»«Фіча X справді готова?»

Compare the spec against the actual code and tests. Reality-based status. Сверьте спеку с реальным кодом и тестами. Статус по факту, а не по ощущениям.Звірте спеку з реальним кодом і тестами. Статус за фактом, а не за відчуттями.

Draft PRDs & specsЧерновики PRD и спекЧернетки PRD і спек

Grounded in how the product is actually built — edge cases included. С опорой на то, как продукт устроен на самом деле — включая крайние случаи.З опорою на те, як продукт влаштований насправді — включно з крайніми випадками.

Automate the routineАвтоматизация рутиныАвтоматизація рутини

Jira/Linear via MCP: weekly summaries, ticket triage, release notes. Jira/Linear через MCP: еженедельные сводки, разбор тикетов, release notes.Jira/Linear через MCP: щотижневі зведення, розбір тикетів, release notes.

No engineer interruptedНи одного отвлечённого инженераЖодного інженера не відволікали
> What does our billing service actually do? Plain words.
● It charges subscriptions on renewal day, retries a failedОн списывает подписки в день продления, повторяет неудачныйВін списує підписки в день продовження, повторює невдалий
card 3 times over 5 days, then downgrades to Free andплатёж 3 раза за 5 дней, потом переводит на Free иплатіж 3 рази за 5 днів, потім переводить на Free і
emails the owner. Refunds are manual — no code path.пишет владельцу. Возвраты — вручную, кода для них нет.пише власнику. Повернення — вручну, коду для них немає.
→ that last line is a gap the spec never mentionedпоследняя строка — пробел, которого не было в спекеостанній рядок — прогалина, якої не було у спеці
Playbook · Manager / POСценарий · Менеджер / POСценарій · Менеджер / PO

Five questionsПять вопросов,П’ять запитань, to ask today.которые можно задать сегодня.які можна поставити сьогодні.

Every one of these is normally a Slack message to an engineer, a wait, and a partial answer. Copy them as they are: Каждый из них обычно означает сообщение инженеру в Slack, ожидание и половинчатый ответ. Копируйте как есть:Кожне з них зазвичай означає повідомлення інженерові в Slack, очікування й половинчасту відповідь. Копіюйте як є:

Answerable without interrupting anyoneОтвечаются, никого не отвлекаяМожна відповісти, нікого не відволікаючи
> Which parts of this repo change most often? That's where
our risk and our rework live.
 
> What happens if the payment provider times out mid-charge?
Walk me through it in plain words.
 
> List every feature flag and tell me which ones nothing reads
any more. Those are safe to delete.
 
> Here are our 12 acceptance criteria. [paste] Which are
actually implemented today? Quote the code for each.
 
> What would break if we deleted the legacy export? Who calls it?

The pattern behind all five: ask about behaviour and risk, not about code. You don't need to read the answer's source to trust it — ask it to quote the file it's citing. Общий принцип всех пяти: спрашивайте о поведении и рисках, а не о коде. Читать исходник, чтобы доверять ответу, не нужно — попросите процитировать файл, на который он ссылается.Спільний принцип усіх п’яти: питайте про поведінку й ризики, а не про код. Читати джерело, щоб довіряти відповіді, не потрібно — попросіть процитувати файл, на який він посилається.

Playbook · Manager / POСценарий · Менеджер / POСценарій · Менеджер / PO

Prototype withoutПрототип безПрототип без an engineer.инженера.інженера.

Describe the idea in plain words — get a working demo you can put in front of users today. Validate first, spend engineering time second. Опишите идею обычными словами — получите работающее демо, которое можно показать пользователям уже сегодня. Сначала проверяем гипотезу, потом тратим время инженеров.Опишіть ідею звичайними словами — отримаєте робоче демо, яке можна показати користувачам уже сьогодні. Спершу перевіряємо гіпотезу, потім витрачаємо час інженерів.

IdeaИдеяІдея

"A calculator that shows savings per plan."«Калькулятор экономии по тарифам».«Калькулятор економії за тарифами».

→ 20 min

Claude builds an interactive demo page.Claude собирает интерактивную демо-страницу.Claude збирає інтерактивну демо-сторінку.

TestТестТест

Show it to five users. Learn before you build.Покажите пяти пользователям. Проверьте гипотезу до разработки.Покажіть п’ятьом користувачам. Перевірте гіпотезу до розробки.

Idea to clickable demo, in one messageОт идеи до кликабельного демо одним сообщениемВід ідеї до клікабельного демо одним повідомленням
> Build a savings calculator: 3 plans, a seats slider,
shows yearly savings live. Our brand colors. One file.
● created calculator.html — slider, live math, 3 plan cardsсоздал calculator.html — слайдер, живой расчёт, 3 карточкистворив calculator.html — слайдер, живий розрахунок, 3 картки
✓ Open it in a browser and click through.Откройте в браузере и прокликайте.Відкрийте в браузері та проклацайте.
> users found the slider confusing — try a dropdown
✓ Swapped. Two rounds of feedback, zero engineering time.Заменил. Два круга обратной связи, ноль времени разработки.Замінив. Два раунди зворотного зв’язку, нуль часу розробки.
Playbook · Manager / POСценарий · Менеджер / POСценарій · Менеджер / PO

From five usersОт пяти пользователейВід п’яти користувачів to a spec.до спеки.до спеки.

You have raw complaints and a codebase. The gap between them is usually a week of meetings. Here it's one prompt, and the answer is checked against what the code actually does. У вас есть сырые жалобы и кодовая база. Разрыв между ними обычно закрывают неделей встреч. Здесь — один промпт, и ответ сверен с тем, что код делает на самом деле.У вас є сирі скарги й кодова база. Розрив між ними зазвичай закривають тижнем зустрічей. Тут — один промпт, і відповідь звірена з тим, що код робить насправді.

Complaints in, acceptance criteria outНа входе жалобы, на выходе критерии приёмкиНа вході скарги, на виході критерії приймання
> Here are 5 support tickets about our CSV export. [paste]
Turn each complaint into an acceptance criterion. Mark which
ones the current code already handles, and flag anything that
contradicts our billing rules in docs/billing.md.
 
✓ AC-1 Export must include refunded ordersЭкспорт включает возвратыЕкспорт включає повернення already worksуже работаетуже працює
✗ AC-2 Dates in the user's timezone, not UTCДаты в зоне пользователя, не UTCДати в зоні користувача, не UTC not implementedне реализованоне реалізовано
✗ AC-3 Export over 10k rows must not time outЭкспорт свыше 10k строк не отваливаетсяЕкспорт понад 10k рядків не падає за таймаутом not implementedне реализованоне реалізовано
⚠ AC-4 "Include tax column" contradicts billing.md §4:«Колонка налога» противоречит billing.md §4:«Колонка податку» суперечить billing.md §4:
tax is per-line, not per-order. Needs a product decision.налог считается на строку, а не на заказ. Нужно решение продакта.податок нараховується на рядок, а не на замовлення. Потрібне рішення продакту.

The ⚠ line is the valuable one. It found a contradiction between what users asked for and what your own rules say — the kind of thing that normally surfaces halfway through building it. Самая ценная — строка с ⚠. Она нашла противоречие между тем, что просят пользователи, и тем, что говорят ваши же правила, — обычно такое всплывает на середине разработки.Найцінніший — рядок із ⚠. Він знайшов суперечність між тим, що просять користувачі, і тим, що кажуть ваші ж правила, — зазвичай таке спливає на середині розробки.

Playbook · Manager / POСценарий · Менеджер / POСценарій · Менеджер / PO

Turning complaintsПревращаем жалобыПеретворюємо скарги into a backlog.в бэклог.на беклог.

Two jobs that eat a product person's week, and both are mostly reading. Neither needs an engineer in the room: Две задачи, съедающие неделю продакта, и обе — в основном чтение. Ни для одной не нужен инженер рядом:Два завдання, що з’їдають тиждень продакту, і обидва — здебільшого читання. Для жодного не потрібен інженер поруч:

Group what people are actually sayingСгруппировать, о чём люди правда говорятЗгрупувати, про що люди справді говорять

Forty tickets rarely mean forty problems. Usually it's five.Сорок тикетов редко означают сорок проблем. Обычно их пять.Сорок тикетів рідко означають сорок проблем. Зазвичай їх п’ять.

Here are 40 support tickets. Group them by underlying cause, not by wording. For each group give me the count, one representative quote, and which part of the code it points at.Вот 40 тикетов поддержки. Сгруппируй их по причине, а не по формулировке. По каждой группе дай количество, одну показательную цитату и участок кода, на который она указывает.Ось 40 тикетів підтримки. Згрупуй їх за причиною, а не за формулюванням. Для кожної групи дай кількість, одну показову цитату й ділянку коду, на яку вона вказує.

Size it before you promise itОценить объём до того, как пообещалиОцінити обсяг до того, як пообіцяли

A rough answer today beats a precise one after the planning meeting.Грубый ответ сегодня лучше точного после планирования.Приблизна відповідь сьогодні краща за точну після планування.

If we added per-user timezones, which files would have to change and what would likely break? Don't write any code — I need the shape of the work, not the work.Если мы добавим таймзоны на пользователя, какие файлы придётся менять и что вероятно сломается? Код не пиши — мне нужен объём работы, а не сама работа.Якщо ми додамо часові зони для кожного користувача, які файли доведеться змінювати і що ймовірно зламається? Код не пиши — мені потрібен обсяг роботи, а не сама робота.

"Don't write any code" is worth keeping in your pocket. It turns the agent into an analyst, and you get an answer in a minute instead of a branch in ten. Фразу «код не пиши» стоит держать под рукой. Она превращает агента в аналитика: вы получаете ответ за минуту вместо ветки за десять.Фразу «код не пиши» варто тримати під рукою. Вона перетворює агента на аналітика: ви отримуєте відповідь за хвилину замість гілки за десять.

The team multiplierКомандный мультипликаторКомандний мультиплікатор

Ship the configКладите конфигКладіть конфіг with the repo.в репозиторий.у репозиторій.

CLAUDE.md, .claude/ (skills, agents, and settings), and .mcp.json — commit them all. Every teammate, from intern to lead, opens the project and gets the same configured agent. Onboarding in minutes, not weeks. CLAUDE.md, .claude/ со скиллами, агентами и настройками, .mcp.json — коммитьте всё. Каждый в команде, от стажёра до лида, открывает проект и получает одинаково настроенного агента. Онбординг за минуты, а не недели.CLAUDE.md, .claude/ зі скілами, агентами й налаштуваннями, .mcp.json — комітьте все. Кожен у команді, від стажиста до ліда, відкриває проєкт і отримує однаково налаштованого агента. Онбординг за хвилини, а не тижні.

repo structure
my-project/
├── CLAUDE.md # project memory# память проекта# пам’ять проєкту
├── .mcp.json # shared tool servers# общие MCP-серверы# спільні MCP-сервери
└── .claude/
├── settings.json # team permissions# командные разрешения# командні дозволи
├── skills/ # shared workflows# общие процессы# спільні процеси
└── agents/ # shared specialists# общие специалисты# спільні спеціалісти
BEST PRACTICES · BEST PRACTICES · BEST PRACTICES · BEST PRACTICES · BEST PRACTICES ·
CHAPTER 04

Work likeРаботайтеПрацюйте a pro.как профи.як профі.

Five habits from Anthropic's own engineering playbook. Пять привычек из инженерного плейбука самой Anthropic.П’ять звичок з інженерного плейбука самої Anthropic.

Habit 01Привычка 01Звичка 01

Be specific.Будьте конкретны.Будьте конкретні. Every time.Каждый раз.Щоразу.

VagueРасплывчатоНечітко

"fix the login bug"

Which bug? Which flow? Done when what?Какой баг? Какой сценарий? Что значит «готово»?Який баг? Який сценарій? Що означає «готово»?

SpecificКонкретноКонкретно

"Fix the login bug where users see a blank screen after a wrong password. Start from AuthForm.tsx. Verify with npm test."

Name files, name constraints, name the definition of done — and always give it a way to verify itself. Называйте файлы, ограничения и критерий готовности — и всегда давайте ему способ проверить себя.Називайте файли, обмеження та критерій готовності — і завжди давайте йому спосіб перевірити себе.

Habit 01 · by roleПривычка 01 · по ролямЗвичка 01 · за ролями

Vague → specific,Расплывчато → конкретно,Нечітко → конкретно, in your words.вашими словами.вашими словами.

"Be specific" is easy to agree with and hard to apply to your own work. Here is the same upgrade made three times, once per role: С «будьте конкретнее» легко согласиться и трудно применить к своей работе. Вот одно и то же улучшение, сделанное трижды — по разу на роль:Із «будьте конкретнішими» легко погодитися і важко застосувати до своєї роботи. Ось те саме покращення, зроблене тричі — по разу на роль:

DeveloperРазработчикРозробник

"make it faster"

The /orders list takes 3.2s to load. Profile it, fix the single biggest cost, and show me a before/after timing.Список /orders грузится 3.2с. Профилируй, устрани самую дорогую операцию и покажи замер «до/после».Список /orders завантажується 3.2с. Профілюй, усунь найдорожчу операцію й покажи замір «до/після».

DesignerДизайнерДизайнер

"make it prettier"

Rebuild this card using our spacing scale and colour tokens, no hard-coded values. Screenshot it at 1440 and 390 and show me both.Пересобери эту карточку на нашей шкале отступов и токенах цвета, без хардкода. Сделай скриншоты на 1440 и 390 и покажи оба.Перезбери цю картку на нашій шкалі відступів і токенах кольору, без хардкоду. Зроби скріншоти на 1440 і 390 та покажи обидва.

Manager / POМенеджер / POМенеджер / PO

"write the spec"

Compare export.service.ts against this spec [paste] and list every gap as a numbered acceptance criterion. Mark which ones already work.Сверь export.service.ts с этой спекой [вставка] и перечисли каждое расхождение как нумерованный критерий приёмки. Отметь, что уже работает.Звір export.service.ts із цією спекою [вставка] і перелічи кожне розходження як нумерований критерій приймання. Познач, що вже працює.

Each rewrite added the same three things: a number to aim at, a file or a rule to work within, and a way to show you the result. Nothing about it is technical. Каждая переписанная версия добавила одно и то же: число, к которому стремиться, файл или правило, в рамках которого работать, и способ показать вам результат. Ничего технического здесь нет.Кожна переписана версія додала те саме: число, до якого прагнути, файл або правило, у межах якого працювати, і спосіб показати вам результат. Нічого технічного тут немає.

Habit 02Привычка 02Звичка 02

Plan first.Сначала план.Спершу план. Code second.Потом код.Потім код.

For anything bigger than a one-liner: enter Plan Mode, let Claude research the codebase and propose an approach, review it, then release the handbrake. Research and implementation are different jobs — separating them keeps you from solving the wrong problem quickly. Для всего крупнее однострочника: включите Plan Mode, дайте Claude изучить код и предложить подход, отревьюйте его — и только потом снимайте ручник. Исследование и реализация — разные работы; если их не разделить, можно очень быстро решить не ту задачу.Для всього більшого за однорядник: увімкніть Plan Mode, дайте Claude вивчити код і запропонувати підхід, перегляньте його — і лише потім знімайте ручник. Дослідження й реалізація — різні роботи; якщо їх не розділити, можна дуже швидко розв’язати не ту проблему.

Shift+Tab — into Plan Modeв Plan Modeу Plan Mode small stepsмелкие шагидрібні кроки — verify each oneпроверяйте каждыйперевіряйте кожен tests as targetsтесты как цельтести як ціль — "green = done"«зелёные = готово»«зелені = готово»

Example prompt: "/plan — research how our auth works and propose a step-by-step plan for adding OAuth. Don't touch code yet." Пример промпта: «/plan — разберись, как устроена наша авторизация, и предложи пошаговый план добавления OAuth. Код пока не трогай».Приклад промпта: «/plan — розберися, як влаштована наша авторизація, і запропонуй покроковий план додавання OAuth. Код поки не чіпай.»

Plan ModePlan ModePlan Mode

What a planКак на самом делеЯкий вигляд actually looks like.выглядит план.насправді має план.

Most people have never seen one, so "plan first" stays abstract advice. This is the real output — and the reason it's worth the extra minute is in the last three lines. Большинство никогда его не видели, поэтому «сначала план» остаётся абстрактным советом. Вот реальный вывод — а причина, ради которой стоит потратить лишнюю минуту, в последних трёх строках.Більшість ніколи його не бачила, тому «спершу план» лишається абстрактною порадою. Ось справжній вивід — а причина, заради якої варто витратити зайву хвилину, в останніх трьох рядках.

plan mode — add OAuth
● Read 14 files across auth, session and the user model.Прочитал 14 файлов: авторизация, сессии, модель пользователя.Прочитав 14 файлів: авторизація, сесії, модель користувача.
 
1. Add the provider configДобавить конфиг провайдераДодати конфіг провайдера auth/providers.ts (new)
2. Add the callback routeДобавить callback-роутДодати callback-роут api/auth/[...path].ts
3. Link OAuth identity to our userСвязать OAuth-личность с юзеромПов’язати OAuth-ідентичність з юзером user.service.ts
4. Migration: accounts tableМиграция: таблица accountsМіграція: таблиця accounts prisma/schema.prisma
5. Tests: new user, returning user, deniedТесты: новый юзер, возвратный, отказТести: новий юзер, повторний, відмова oauth.test.ts (new)
 
⚠ Risk: session.ts is shared with the mobile app. I'd ratherРиск: session.ts общий с мобильным приложением. Я бы предпочёлРизик: session.ts спільний із мобільним застосунком. Я б волів
extend it than change its existing shape.расширить его, а не менять текущую форму.розширити його, а не міняти поточну форму.
 
? One decision from you: should an OAuth email that matches anОдно решение за вами: если e-mail из OAuth совпал с существующимОдне рішення за вами: якщо e-mail з OAuth збігся з наявним
existing account link to it, or be rejected as a duplicate?аккаунтом — связывать их или отклонять как дубликат?акаунтом — пов’язувати їх чи відхиляти як дублікат?
 
[a] approveпринятьприйняти [e] edit the planизменить планзмінити план [n] rejectотклонитьвідхилити

The ⚠ and the ? are the payoff: a shared file worth care, and a product decision it refused to make for you — both before a line changed. Ради ⚠ и ? всё и затевалось: общий файл, с которым стоит быть осторожным, и продуктовое решение, которое он не стал принимать за вас, — и всё до единой правки.Заради ⚠ і ? усе й робилося: спільний файл, з яким варто бути обережним, і продуктове рішення, яке він не став ухвалювати за вас, — і все це ще до жодної правки.

Habit 03Привычка 03Звичка 03

Stay inОставайтесьЗалишайтеся the loop.в контуре.за кермом.

Autonomy doesn't mean absence. The teams that move fastest keep a human hand on the wheel: Автономность не значит самоустранение. Быстрее всех движутся команды, у которых рука остаётся на руле:Автономність не означає самоусунення. Найшвидше рухаються команди, у яких рука лишається на кермі:

Review every diffРевьюйте каждый диффПереглядайте кожен диф

You're the senior in this pair. Read what lands.В этой паре сеньор — вы. Читайте, что попадает в код.У цій парі сеньйор — ви. Читайте, що потрапляє в код.

Course-correct earlyПравьте курс раноПравте курс рано

Wrong direction? Esc immediately — don't wait for it to finish.Не туда? Сразу Esc — не ждите, пока он закончит.Не туди? Одразу Esc — не чекайте, доки він закінчить.

Two strikes → restartДве неудачи → рестартДві невдачі → рестарт

After two failed corrections, /clear and re-prompt better. Cheaper than arguing.После двух неудачных правок — /clear и промпт получше. Дешевле, чем спорить.Після двох невдалих правок — /clear і кращий промпт. Дешевше, ніж сперечатися.

Course-correcting takes one keyСмена курса — одна клавишаЗміна курсу — одна клавіша
● Refactoring auth… rewriting the session store…Рефакторю авторизацию… переписываю хранилище сессий…Рефакторю авторизацію… переписую сховище сесій…
⎋ Esc interrupted — nothing was lostпрервано — ничего не потеряноперервано — нічого не втрачено
> stop — don't touch the session store, it's shared with
mobile. Only the token refresh in auth.ts.
✓ Reverted the store, scoped to auth.ts. Continue?Откатил хранилище, работаю только в auth.ts. Продолжать?Відкотив сховище, працюю лише в auth.ts. Продовжувати?
Reading a diffКак читать диффЯк читати диф

Thirty seconds,Тридцать секунд,Тридцять секунд, three questions.три вопроса.три запитання.

A diff is just a before-and-after list: − is a line that went away, + is a line that arrived. You don't need to understand the code to ask three useful questions about it. Дифф — это просто список «было и стало»: − строка ушла, + строка появилась. Чтобы задать о нём три полезных вопроса, понимать код не нужно.Диф — це просто список «було і стало»: − рядок пішов, + рядок з’явився. Щоб поставити про нього три корисні запитання, розуміти код не потрібно.

src/services/invoice.ts
function formatDueDate(invoice) {
− return invoice.dueDate.toLocaleDateString()
+ return invoice.dueDate.toLocaleDateString(user.locale, {
+ timeZone: user.timeZone
+ })
}
 
src/services/invoice.test.ts
+ test('renders the due date in the user timezone', …)
1Did it change more files than the task needed? Here: two — the fix and its test. Good.Изменено больше файлов, чем требовала задача? Здесь два — фикс и тест к нему. Нормально.Змінено більше файлів, ніж потребувало завдання? Тут два — фікс і тест до нього. Нормально.
2Did it delete anything it wasn't asked to? Here: one line, replaced by the new version of itself. Fine.Удалено что-то, о чём не просили? Здесь одна строка, заменённая своей же новой версией. Нормально.Видалено щось, про що не просили? Тут один рядок, замінений своєю ж новою версією. Нормально.
3Does the test it added actually test the bug? Read the test's name out loud — here it names the exact thing that was broken.Добавленный тест правда проверяет этот баг? Прочитайте название теста вслух — здесь оно называет ровно то, что было сломано.Доданий тест справді перевіряє цей баг? Прочитайте назву тесту вголос — тут вона називає саме те, що було зламано.

You don't need to read the code to ask these. If any answer worries you, say so in plain words — "why did you touch the second file?" is a complete review comment. Чтобы задать эти вопросы, читать код не нужно. Если какой-то ответ настораживает — скажите об этом обычными словами: «зачем ты трогал второй файл?» — это полноценный комментарий на ревью.Щоб поставити ці запитання, читати код не потрібно. Якщо якась відповідь насторожує — скажіть про це звичайними словами: «навіщо ти чіпав другий файл?» — це повноцінний коментар на рев’ю.

Habit 04Привычка 04Звичка 04

Safety isБезопасность —Безпека — a setting.это настройка.це налаштування.

Least privilegeМинимум привилегийМінімум привілеїв

Allow the narrow and safe (npm run test:*), deny the sensitive (.env, curl). Разрешайте узкое и безопасное (npm run test:*), запрещайте чувствительное (.env, curl).Дозволяйте вузьке й безпечне (npm run test:*), забороняйте чутливе (.env, curl).

Secrets stay outСекреты — за бортомСекрети — за бортом

Keys and tokens never go into prompts or CLAUDE.md. Deny-rule your .env files. Ключи и токены не попадают в промпты и CLAUDE.md. Закройте .env deny-правилом.Ключі й токени не потрапляють у промпти та CLAUDE.md. Закрийте .env deny-правилом.

Review before pushРевью перед пушемРев’ю перед пушем

Commits are cheap to check and expensive to regret. /security-review for sensitive diffs. Проверить коммит дёшево, пожалеть — дорого. /security-review для чувствительных диффов.Перевірити коміт дешево, пошкодувати — дорого. /security-review для чутливих дифів.

--dangerously-skip-permissions

The name is the documentation. Only inside isolated containers — never on your laptop. Название говорит само за себя. Только в изолированных контейнерах — никогда на рабочем ноутбуке.Назва говорить сама за себе. Лише в ізольованих контейнерах — ніколи на робочому ноутбуці.

What a guardrail looks like in the momentКак ограждение выглядит в моментеЯк запобіжник спрацьовує в моменті
> clean up the old migration files
● Wants to run:Хочет выполнить:Хоче виконати: rm -rf migrations/2023-*
✗ Blocked byЗаблокировано правиломЗаблоковано правилом deny: Bash(rm -rf *)
● Listing them instead — delete the ones you recognize:Вместо этого показываю список — удалите то, что узнаёте:Натомість показую список — видаліть те, що впізнаєте:
2023-04-add-index.sql · 2023-07-drop-legacy.sql · …
Safety · the short versionБезопасность · короткоБезпека · коротко

The four rulesЧетыре правила,Чотири правила, never to allow.которые нельзя разрешать.які не можна дозволяти.

If you read nothing else about permissions, paste this. Four denials cover the mistakes that are expensive to undo — and unlike the allow list, they don't depend on your stack. Если вы не станете читать о разрешениях ничего больше — вставьте вот это. Четыре запрета закрывают ошибки, которые дорого откатывать, и, в отличие от allow, не зависят от вашего стека.Якщо ви не читатимете про дозволи більше нічого — вставте ось це. Чотири заборони закривають помилки, які дорого відкочувати, і, на відміну від allow, не залежать від вашого стеку.

Paste into permissions.deny and forget about itВставьте в permissions.deny и забудьтеВставте в permissions.deny і забудьте
✗ "Bash(rm -rf *)"
deleting in bulk is never worth the time it savesмассовое удаление никогда не стоит сэкономленного временимасове видалення ніколи не варте заощадженого часу
 
✗ "Bash(git push --force *)"
rewriting shared history costs the whole team, not just youпереписанная общая история бьёт по всей команде, а не по вам одномупереписана спільна історія б’є по всій команді, а не лише по вас
 
✗ "Read(**/.env)", "Read(**/.env.*)", "Read(**/*.pem)"
a secret that reaches the model is a secret you must now rotateсекрет, попавший в модель, — это секрет, который придётся менятьсекрет, що потрапив у модель, — це секрет, який доведеться міняти
 
✗ unrestricted outbound fetchingнеограниченные исходящие запросынеобмежені вихідні запити
allow the domains you trust: WebFetch(domain:docs.your-company.com)разрешайте домены, которым доверяете: WebFetch(domain:docs.your-company.com)дозволяйте домени, яким довіряєте: WebFetch(domain:docs.your-company.com)
 
✓ deny always beats allow — you can be generous everywhere elsedeny всегда сильнее allow — во всём остальном можно быть щедрымdeny завжди сильніший за allow — в усьому іншому можна бути щедрим

What they have in common: each is cheap to live without and expensive to undo. That's the whole test for deny. Общее у них одно: без каждого легко обойтись, а откатывать дорого. В этом и весь критерий для deny.Спільне в них одне: без кожного легко обійтися, а відкочувати дорого. У цьому й весь критерій для deny.

Habit 05 · Anti-patternsПривычка 05 · АнтипаттерныЗвичка 05 · Антипатерни

Four waysЧетыре способаЧотири способи to fail.всё испортить.все зіпсувати.

Each of these feels like saving time in the moment. Each one ends in rework: Каждый из этих паттернов в моменте похож на экономию времени. Каждый заканчивается переделкой:Кожен із цих патернів спершу схожий на економію часу. Кожен закінчується переробкою:

The mega-promptМегапромптМегапромпт

"Rewrite the whole app" in one go. Split it: plan → milestones → verified steps. «Перепиши всё приложение» одним махом. Дробите: план → вехи → проверяемые шаги.«Перепиши весь застосунок» одним махом. Дробіть: план → віхи → кроки, які можна перевірити.

Blind auto-acceptСлепой автоаксептСліпий автоаксепт

Accept-edits mode on unfamiliar code with no diff review. Speed isn't the goal; shipping is. Режим accept edits на незнакомом коде без ревью диффов. Цель — не скорость, а результат в проде.Режим accept edits на незнайомому коді без рев’ю дифів. Мета — не швидкість, а результат у проді.

The stale CLAUDE.mdПротухший CLAUDE.mdЗастарілий CLAUDE.md

Wrong docs are worse than none. If Claude ignores a rule, the file is probably too long. Неверная память хуже её отсутствия. Если Claude игнорирует правило — файл, скорее всего, слишком длинный.Хибна пам’ять гірша за її відсутність. Якщо Claude ігнорує правило — файл, найімовірніше, задовгий.

The infinite sessionБесконечная сессияНескінченна сесія

One chat for five unrelated tasks. Context debt compounds — /clear is free. Один чат на пять несвязанных задач. Контекстный долг накапливается — а /clear бесплатен.Один чат на п’ять непов’язаних завдань. Контекстний борг накопичується — а /clear безплатний.

The mega-prompt, split the right wayМегапромпт, разбитый правильноМегапромпт, розбитий правильно
✗ rewrite the whole admin panel in Vue
 
✓ 1. /plan — map every admin route and its data depsкарта всех роутов админки и их данныхкарта всіх роутів адмінки та їхніх даних
✓ 2. port the users table only, keep tests greenперенести только таблицу юзеров, тесты зелёныеперенести лише таблицю юзерів, тести зелені
✓ 3. /clear → next route, fresh contextследующий роут, чистый контекстнаступний роут, чистий контекст
Anti-patterns · repairedАнтипаттерны · починенныеАнтипатерни · виправлені

The other three,Остальные три,Інші три, repaired.починенные.виправлені.

The previous slide fixed the mega-prompt. Here are the other three failures, each with the smallest change that actually resolves it: На прошлом слайде мы починили мегапромпт. Вот остальные три провала — и для каждого минимальное изменение, которое его действительно закрывает:На попередньому слайді ми виправили мегапромпт. Ось інші три провали — і для кожного мінімальна зміна, яка його справді закриває:

Blind auto-acceptСлепое автопринятиеСліпе автоприйняття

Fails as: you turn on Accept edits, stop reading, and find out three days later.Как проваливается: включаете Accept edits, перестаёте читать и узнаёте об этом через три дня.Як провалюється: вмикаєте Accept edits, перестаєте читати й дізнаєтеся про це через три дні.

Fix: keep Accept edits, but add a PostToolUse hook that runs the tests, and read the diff before you commit. Speed stays, blindness goes.Починка: оставьте Accept edits, но добавьте PostToolUse-хук с прогоном тестов и читайте дифф перед коммитом. Скорость остаётся, слепота уходит.Лагодження: залиште Accept edits, але додайте PostToolUse-хук із прогоном тестів і читайте диф перед комітом. Швидкість лишається, сліпота зникає.

The CLAUDE.md nobody followsCLAUDE.md, которому никто не следуетCLAUDE.md, якого ніхто не дотримується

Fails as: it ignored a rule, so you added another rule. Now it's 400 lines and it ignores more of them.Как проваливается: он проигнорировал правило — вы дописали ещё одно. Теперь там 400 строк, и игнорируется больше.Як провалюється: він проігнорував правило — ви дописали ще одне. Тепер там 400 рядків, і ігнорується більше.

Fix: if a rule was ignored twice, delete three other lines rather than adding a fourth. Attention is the scarce thing, not space.Починка: если правило проигнорировано дважды — удалите три другие строки вместо добавления четвёртой. Дефицитно внимание, а не место.Лагодження: якщо правило проігноровано двічі — видаліть три інші рядки замість додавання четвертого. Дефіцитна увага, а не місце.

The session that never endsБесконечная сессияНескінченна сесія

Fails as: one conversation covers four tickets, and by the fourth the answers have quietly got worse.Как проваливается: одна переписка тянет четыре тикета, и к четвёртому ответы незаметно ухудшились.Як провалюється: одна розмова тягне чотири тикети, і до четвертого відповіді непомітно погіршилися.

Fix: one /clear per ticket. If the session taught you something worth keeping, put it in CLAUDE.md first — then clear without regret.Починка: один /clear на тикет. Если сессия научила чему-то важному — сначала запишите это в CLAUDE.md, потом очищайте без сожалений.Лагодження: один /clear на тикет. Якщо сесія навчила чогось важливого — спершу запишіть це в CLAUDE.md, потім очищайте без жалю.

All four anti-patterns are the same mistake wearing different clothes: letting the agent run further than you're still reading. Все четыре антипаттерна — одна и та же ошибка в разной одежде: агент убегает дальше, чем вы всё ещё читаете.Усі чотири антипатерни — та сама помилка в різному одязі: агент забігає далі, ніж ви ще читаєте.

PRACTICE · PRACTICE · PRACTICE · PRACTICE · PRACTICE · PRACTICE · PRACTICE · PRACTICE ·
CHAPTER 05

Hands on.Практика.Практика. Right now.Прямо сейчас.Просто зараз.

Theory is over. Thirty minutes, three steps, your real project. Теория закончилась. Тридцать минут, три шага, ваш реальный проект.Теорія скінчилася. Тридцять хвилин, три кроки, ваш реальний проєкт.

Case study · from prompt to websiteРазбор кейса · от промпта до сайтаРозбір кейсу · від промпта до сайту

How SYNAPSEКак был сделанЯк було зроблено was built.SYNAPSE.SYNAPSE.

The whole process, unedited — one prompt, and Claude carries it end-to-end: plan, code, its own browser check, iteration. On the right is the actual session. Весь процесс без ретуши — один промпт, и Claude ведёт задачу до конца: план, код, самопроверка в браузере, итерация. Справа — реальная сессия.Увесь процес без ретуші — один промпт, і Claude веде завдання до кінця: план, код, самоперевірка в браузері, ітерація. Праворуч — реальна сесія.

1 · one prompt with requirementsодин промпт с требованиямиодин промпт із вимогами 2 · Claude answers with a planClaude отвечает планомClaude відповідає планом 3 · writes all the code itselfсам пишет весь кодсам пише весь код 4 · opens it in a browser & checksсам открывает в браузере и проверяетсам відкриває в браузері й перевіряє 5 · iterates on your wordsитерирует по вашим словамітерує за вашими словами
Open the result — SYNAPSE →Открыть результат — SYNAPSE →Відкрити результат — SYNAPSE →
claude — the actual session
> Build a one-page site about AI in a maximally unique
style: a living neural network that reacts to the cursor,
scramble typography, animated counters. One HTML file.
 
● Plan: canvas particle network with mouse attraction ·План: canvas-нейросеть с притяжением к курсору ·План: canvas-нейромережа з притяганням до курсора ·
scramble hero · token-sampling widget · timelinescramble-заголовок · виджет семплинга токенов · таймлайнscramble-заголовок · віджет семплінгу токенів · таймлайн
● Writing synapse-demo.html — ~700 lines of HTML/CSS/JSПишу synapse-demo.html — ~700 строк HTML/CSS/JSПишу synapse-demo.html — ~700 рядків HTML/CSS/JS
● Opening it in Chrome… scrolling, screenshotting sectionsОткрываю в Chrome… скроллю, снимаю скриншоты секцийВідкриваю в Chrome… скролю, знімаю скріншоти секцій
● Console: 0 errors · animations verifiedКонсоль: 0 ошибок · анимации провереныКонсоль: 0 помилок · анімації перевірено
✓ Done. Interactive, offline, zero dependencies.Готово. Интерактивно, офлайн, ноль зависимостей.Готово. Інтерактивно, офлайн, нуль залежностей.
 
> Make the hero glow stronger, counters a bit faster
✓ Updated — that's the whole loop. Anything else?Обновлено — вот и весь цикл. Что-то ещё?Оновлено — ось і весь цикл. Щось іще?
Workshop · 30 min · everyoneПрактикум · 30 мин · для всехПрактикум · 30 хв · для всіх

Three steps,Три шага,Три кроки, one micro-task.одна микрозадача.одне мікрозавдання.

1 · 10 min10 мин10 хв

Set upНастройкаНалаштування

Install, sign in, open a real repo, run /init. Read the generated CLAUDE.md and fix one line it got wrong. Установите, войдите, откройте реальный репозиторий, запустите /init. Прочитайте созданный CLAUDE.md и поправьте одну строку, где он ошибся.Встановіть, увійдіть, відкрийте реальний репозиторій, запустіть /init. Прочитайте створений CLAUDE.md і виправте один рядок, де він помилився.

2 · 15 min15 мин15 хв

Ship a micro-taskСделайте микрозадачуЗробіть мікрозавдання

Pick the smallest real item in your backlog. Plan Mode → approve the plan → implement → read the diff. Возьмите самую маленькую реальную задачу из бэклога. Plan Mode → одобрите план → реализация → прочитайте дифф.Візьміть найменше реальне завдання з беклогу. Plan Mode → схваліть план → реалізація → прочитайте диф.

3 · 5 min5 мин5 хв

DebriefРазборРозбір

What surprised you? What felt off? Share your best prompt with a neighbor. Что удивило? Что показалось неудобным? Поделитесь лучшим промптом с соседом.Що здивувало? Що здалося незручним? Поділіться найкращим промптом із сусідом.

Work in pairs: one set of eyes on the prompt, the other on the diff. Работайте в парах: одна пара глаз на промпте, вторая — на диффе.Працюйте в парах: одна пара очей на промпті, друга — на дифі.

Your first four commands, in orderВаши первые четыре команды, по порядкуВаші перші чотири команди, по порядку
$ cd my-project && claude
> /init ← 2 min · then read the file it wrote2 мин · потом прочитайте созданный файл2 хв · потім прочитайте створений файл
> /plan ← describe your smallest real taskопишите самую мелкую реальную задачуопишіть найдрібніше реальне завдання
> /code-review ← on your own diff, before committingна свой же дифф, до коммитана свій же диф, до коміту
Workshop · Role tracksПрактикум · Ролевые трекиПрактикум · Рольові треки

Same 30 minutes,Те же 30 минут —Ті самі 30 хвилин — your own track.свой трек.свій трек.

Already set up? Take the exercise for your role instead: Уже настроились? Возьмите упражнение под свою роль:Уже налаштувалися? Візьміть вправу під свою роль:

DeveloperРазработчикРозробник

Task: fix a failing or flaky test — flaky means it passes sometimes and fails other times — or a lint error, through Claude, then review your own diff. Задание: почините падающий или нестабильный (flaky) тест (или ошибку линтера) через Claude, затем отревьюйте собственный дифф.Завдання: виправте через Claude тест, що падає або нестабільний (flaky — інколи проходить, інколи ні), чи помилку лінтера, а потім перегляньте власний диф.

npm test fails on auth.spec.ts. Find the root cause, fix it, keep the suite green. Then run /code-review on the diff. npm test падает на auth.spec.ts. Найди первопричину, почини, доведи тесты до зелёных. Потом /code-review на дифф.npm test падає на auth.spec.ts. Знайди першопричину, полагодь, доведи тести до зелених. Потім /code-review на диф.

DesignerДизайнерДизайнер

Task: turn one Figma frame into a living prototype and iterate on it in plain words. Задание: превратите один фрейм из Figma в живой прототип и дорабатывайте его обычными словами.Завдання: перетворіть один фрейм із Figma на живий прототип та допрацьовуйте його звичайними словами.

Here's a Figma frame: [link]. Build it as one HTML file with our brand colors. Then show me 3 spacing variants of the hero. Вот фрейм из Figma: [ссылка]. Собери его одним HTML-файлом в наших фирменных цветах. Потом покажи 3 варианта отступов в hero.Ось фрейм із Figma: [посилання]. Збери його одним HTML-файлом у наших фірмових кольорах. Потім покажи 3 варіанти відступів у hero.

Manager / POМенеджер / POМенеджер / PO

Task: check one feature against reality and turn the gaps into draft acceptance criteria. Задание: сверьте одну фичу с реальностью и превратите расхождения в черновик acceptance-критериев.Завдання: звірте одну фічу з реальністю та перетворіть розбіжності на чернетку acceptance-критеріїв.

What does our export feature actually do today? Compare it with this spec: [paste]. List every gap as an acceptance criterion. Что наша фича экспорта делает на самом деле? Сравни с этой спекой: [вставьте]. Каждое расхождение оформи как acceptance-критерий.Що наша фіча експорту робить насправді? Порівняй із цією спекою: [вставте]. Кожну розбіжність оформи як acceptance-критерій.
Workshop · if you get stuckПрактикум · если застрялиПрактикум · якщо застрягли

Six symptoms,Шесть симптомов,Шість симптомів, six fixes.шесть решений.шість рішень.

These six account for most of the moments where people quietly give up in the first hour. Every one has a one-line fix: На эти шесть случаев приходится большинство моментов, когда люди тихо сдаются в первый же час. У каждого решение в одну строку:На ці шість випадків припадає більшість моментів, коли люди тихо здаються в першу ж годину. У кожного рішення в один рядок:

it edited the wrong filesтронул не те файлызачепив не ті файлиpress Esc, then /rewind, then name the exact files in your promptнажмите Esc, затем /rewind, затем назовите конкретные файлы в промптенатисніть Esc, потім /rewind, потім назвіть конкретні файли у промпті
it keeps ignoring a ruleигнорирует правилоігнорує правилоyour CLAUDE.md is too long — cut it, don't extend itваш CLAUDE.md слишком длинный — сокращайте, а не дописывайтеваш CLAUDE.md занадто довгий — скорочуйте, а не дописуйте
it asks permission constantlyпостоянно спрашивает разрешениепостійно питає дозвіл/permissions, then allow the command it keeps asking about/permissions, затем разрешите команду, о которой он спрашивает/permissions, потім дозвольте команду, про яку він питає
answers got vague and wrongответы стали общими и невернымивідповіді стали загальними й хибними/context — if you're near full, /clear and re-ask/context — если почти заполнено, /clear и спросите заново/context — якщо майже заповнено, /clear і запитайте знову
it invented a file or functionвыдумал файл или функциювигадав файл чи функціюask it to open the file and quote the line before believing itпопросите открыть файл и процитировать строку, прежде чем веритьпопросіть відкрити файл і процитувати рядок, перш ніж вірити
it did too much at onceсделал слишком много сразузробив забагато одразу/rewind, then ask for step one only, and check it before step two/rewind, затем попросите только первый шаг и проверьте до второго/rewind, потім попросіть лише перший крок і перевірте до другого

Nothing here is unrecoverable. Esc stops it mid-action without losing the conversation, and /rewind puts the files back — which is exactly why it's safe to experiment during the workshop. Ничего непоправимого здесь нет. Esc останавливает на полудействии, не теряя переписку, а /rewind возвращает файлы назад — именно поэтому на практикуме можно спокойно экспериментировать.Нічого непоправного тут немає. Esc зупиняє його посеред дії, не втрачаючи розмову, а /rewind повертає файли назад — саме тому на практикумі можна спокійно експериментувати.

HomeworkДомашнее заданиеДомашнє завдання

Seven days,Семь дней —Сім днів — seven reps.семь подходов.сім підходів.

1Run /init in your main project; prune CLAUDE.md to under 200 linesЗапустите /init в основном проекте; вычистите CLAUDE.md до 200 строкЗапустіть /init в основному проєкті; вичистіть CLAUDE.md до 200 рядків
2Add permissions for your test and lint commandsНастройте permissions под ваши команды тестов и линтераНалаштуйте дозволи під ваші команди тестів і лінтера
3Create one skill for a workflow you repeat weeklyСоздайте один скилл для процесса, который повторяете каждую неделюСтворіть один скіл для процесу, який повторюєте щотижня
4Connect one MCP server — GitHub, Figma, or JiraПодключите один MCP-сервер — GitHub, Figma или JiraПідключіть один MCP-сервер — GitHub, Figma чи Jira
5Ship one real task end-to-end: Plan Mode → diffs → /code-reviewДоведите одну реальную задачу до конца: Plan Mode → диффы → /code-reviewДоведіть одне реальне завдання до кінця: Plan Mode → дифи → /code-review
6Create one subagent — a code reviewer is a great first oneСоздайте одного субагента — ревьюер кода отлично подходит первымСтворіть одного субагента — рев’юер коду чудово підходить першим
7Write down what worked and what didn't — one paragraphЗапишите, что сработало, а что нет — один абзацЗапишіть, що спрацювало, а що ні — один абзац

Pass criterion: one task shipped to a PR with Claude Code. Bring your CLAUDE.md and that task's story to the next session. Критерий зачёта: одна задача, доведённая до PR с помощью Claude Code. Принесите на следующую встречу свой CLAUDE.md и историю этой задачи.Критерій заліку: одне завдання, доведене до PR за допомогою Claude Code. Принесіть на наступну зустріч свій CLAUDE.md та історію цього завдання.

Cheat sheetШпаргалкаШпаргалка

Everything onВсё наУсе на one slide.одном слайде.одному слайді.

/initgenerate CLAUDE.mdсоздать CLAUDE.mdстворити CLAUDE.md
/planresearch before editsисследование до правокдослідження до правок
/clearfresh contextчистый контекстчистий контекст
/compactshrink historyсжать историюстиснути історію
/permissionsapproval rulesправила доступаправила доступу
/agentsmanage subagentsуправление субагентамикерування субагентами
/mcptool serversсерверы инструментовсервери інструментів
/modelswitch modelsсменить модельзмінити модель
/code-reviewreview the diffревью диффарев’ю дифа
/rewindrestore a checkpointоткат к чекпоинтувідкат до чекпоінта
Shift+Tabcycle modesпереключение режимовперемикання режимів
Escinterrupt safelyбезопасно прерватьбезпечно перервати

Docs: code.claude.com/docs · Best practices: anthropic.com/engineering Документация: code.claude.com/docs · Практики: anthropic.com/engineeringДокументація: code.claude.com/docs · Практики: anthropic.com/engineering

GlossaryГлоссарийГлосарій

Every word in this deck,Все слова этого курса —Усі слова цього курсу — in plain words.простым языком.простою мовою.

None of these need anything from the rest of the deck. If a term stopped you earlier, this is the whole explanation: Ни одно из этих объяснений не требует ничего из остального курса. Если какой-то термин вас притормозил — вот всё объяснение целиком:Жодне з цих пояснень не потребує нічого з решти курсу. Якщо якийсь термін вас пригальмував — ось усе пояснення цілком:

agentагентагентa program that does the work, not just answersпрограмма, которая делает работу, а не только отвечаетпрограма, яка робить роботу, а не лише відповідає
promptпромптпромптwhat you type — a brief, in ordinary languageто, что вы печатаете, — бриф обычным языкомте, що ви друкуєте, — бриф звичайною мовою
contextконтекстконтекстeverything it holds in mind right now; a fixed sizeвсё, что он держит в голове сейчас; размер фиксированусе, що він тримає в голові зараз; розмір фіксований
tokenтокентокенthe unit context is measured in — roughly ¾ of a wordединица измерения контекста — примерно ¾ словаодиниця вимірювання контексту — приблизно ¾ слова
repoрепозиторийрепозиторійthe folder holding your project and its historyпапка с вашим проектом и его историейтека з вашим проєктом та його історією
diffдиффдифa before/after list: − a line left, + a line arrivedсписок «было/стало»: − строка ушла, + строка появиласьсписок «було/стало»: − рядок пішов, + рядок з’явився
commitкоммиткомітone saved step of work, with a note about whyодин сохранённый шаг работы с пометкой зачемодин збережений крок роботи з поміткою навіщо
branchветкагілкаa side copy where you work without disturbing anyoneбоковая копия, где вы работаете, никому не мешаябічна копія, де ви працюєте, нікому не заважаючи
pull requestthe bundle of changes you hand the team to reviewнабор изменений, который вы отдаёте команде на ревьюнабір змін, який ви віддаєте команді на рев’ю
CLIa program you run by typing commands in the terminalпрограмма, которой управляют командами в окне терминалапрограма, якою керують командами у вікні термінала
CLAUDE.mda notes file it reads at the start of every sessionфайл заметок, который он читает в начале каждой сессиифайл нотаток, який він читає на початку кожної сесії
MCPa standard plug for connecting outside tools to itстандартный разъём для подключения к нему сторонних инструментовстандартний роз’єм для під’єднання до нього сторонніх інструментів
hookхукхукyour command, run automatically at a fixed momentваша команда, запускаемая автоматически в заданный моментваша команда, що запускається автоматично в заданий момент
skillскиллскілa saved procedure you can call by nameсохранённая процедура, которую можно вызвать по именизбережена процедура, яку можна викликати за іменем
subagentсубагентсубагентa helper given one job and its own separate contextпомощник с одной задачей и собственным отдельным контекстомпомічник з одним завданням і власним окремим контекстом
flaky testнестабильный тестнестабільний тестone that passes sometimes and fails other timesтест, который то проходит, то падаеттест, який то проходить, то падає

StartНачнитеПочніть building.создавать.створювати.

zsh
$ cd your-project
$ claude

The best way to learn is the next 30 minutes with your own repo. Лучший способ научиться — ближайшие 30 минут с вашим собственным репозиторием.Найкращий спосіб навчитися — найближчі 30 хвилин із вашим власним репозиторієм.

A course byАвтор курсаАвтор курсу Oleg Osypenko

Bonus · ReferenceБонус · СправочникБонус · Довідник

Every config file,Каждый конфиг-файл,Кожен конфіг-файл, on one map.на одной карте.на одній карті.

An interactive companion to this course: all 20 configuration files in five groups — the four layers you just saw, plus subagents — what each one does, where it lives on macOS, Linux, and Windows, which keys it accepts, and the practice notes that save an afternoon. Интерактивное дополнение к курсу: все 20 конфигурационных файлов в пяти группах — четыре уровня, которые вы уже видели, плюс субагенты: что делает каждый, где лежит в macOS, Linux и Windows, какие ключи принимает, плюс практические заметки, экономящие полдня. Інтерактивне доповнення до курсу: усі 20 конфігураційних файлів у п’яти групах — чотири рівні, які ви вже бачили, плюс субагенти: що робить кожен, де лежить у macOS, Linux і Windows, які ключі приймає та практичні нотатки, що заощаджують пів дня.

Same three languages · search, keyboard navigation, shareable links to any file. Те же три языка · поиск, клавиатурная навигация, ссылки на любой файл. Ті самі три мови · пошук, клавіатурна навігація, посилання на будь-який файл.

L1 — L5

Five levelsПять уровнейП’ять рівнів

Managed, global, project, local, subagents — with the precedence order always in view. Managed, глобальный, проектный, локальный, субагенты — с порядком приоритета всегда на виду. Managed, глобальний, проєктний, локальний, субагенти — з порядком пріоритету завжди на виду.

macOS · Linux · Win

Exact pathsТочные путиТочні шляхи

Switch the OS tab and copy the path with one click. Переключите вкладку ОС и скопируйте путь одним кликом. Перемкніть вкладку ОС і скопіюйте шлях одним кліком.

JSON · YAML · MD

Real examplesЖивые примерыЖиві приклади

A working snippet for every file you would actually write by hand. Рабочий сниппет для каждого файла, который реально пишут руками. Робочий сніпет для кожного файлу, який справді пишуть руками.

→

Practice notesЗаметки практикиНотатки практики

The non-obvious parts: what merges, what wins, what never leaves your machine. Неочевидное: что мержится, что побеждает, что никогда не покидает вашу машину. Неочевидне: що зливається, що перемагає, що ніколи не залишає вашу машину.

● Config file mapКарта конфиг-файловКарта конфіг-файлів

⌕
20 files · 5 levels20 файлов · 5 уровней20 файлів · 5 рівнів
Bonus · one more promptБонус · ещё один промптБонус · ще один промпт

One prompt.Один промпт.Один промпт. A game you can beat.Игра, которую можно выиграть.Гра, яку можна виграти.

A falling-blocks race against a bot, side by side: first to twelve lines wins. The bot ranks every possible landing by height, holes and bumpiness, then plays the best one out by hand — no teleporting, it lives under the same gravity you do. Both wells are fed the same sequence of pieces, so a loss is never bad luck. Гонка в падающих блоках против бота, два стакана рядом: побеждает тот, кто первым соберёт двенадцать линий. Бот оценивает каждое возможное размещение по высоте, дырам и неровности стека, а затем отыгрывает лучшее руками — без телепортации, он живёт в той же гравитации, что и вы. Оба стакана получают одинаковую последовательность фигур, так что проигрыш не спишешь на удачу. Перегони з ботом, два стакани поруч: перемагає той, хто першим збере дванадцять ліній. Бот оцінює кожне можливе розміщення за висотою, дірами й нерівністю стека, а потім відіграє найкраще руками — без телепортації, він живе в тій самій гравітації, що й ви. Обидва стакани отримують однакову послідовність фігур, тож програш не спишеш на везіння.

Play it — you against the bot →Играть — вы против бота →Грати — ви проти бота →

Same three languages · keyboard on desktop, touch controls on a phone. Те же три языка · клавиатура на десктопе, тач-управление на телефоне. Ті самі три мови · клавіатура на десктопі, тач-керування на телефоні.

game.html
> a bonus page for the course: falling blocks,бонус-страница к курсу: падающие блоки,бонус-сторінка до курсу: блоки, що падають,
me against a bot, in the deck's own style,я против бота, в стиле самой презентации,я проти бота, у стилі самої презентації,
and spell CLAUDE out of the blocksи собери из блоков надпись CLAUDEі збери з блоків напис CLAUDE
 
✓ game.html — one fileодин файлодин файл
· a bot that scores every landingбот, оценивающий каждое размещениебот, що оцінює кожне розміщення
· one shared piece stream, so it stays fairобщий поток фигур — честная гонкаспільний потік фігур — чесні перегони
· whole-pixel grid, fits every screenцелочисленная сетка, влезает в любой экранцілочисельна сітка, влазить у будь-який екран
 
✓ 0 dependencies · works offline0 зависимостей · работает офлайн0 залежностей · працює офлайн