Verum Lab Каталог решений

Второй мозг бизнеса, или Claude, который знает твой бизнес

Копируешь один промпт в Claude Code, и он сам собирает базу знаний твоего бизнеса, проводит интервью и разбирает твои документы.

Что ты получишь

  • второй мозг на своём компьютере: папку с файлами о твоём бизнесе
  • Claude, который знает твои продукты, цены, стиль и цели
  • один промпт, который сам проведёт интервью и разложит твои документы

Что нужно: Claude Code и подписка Claude

У Claude может быть то, что есть у хорошего сотрудника после адаптации. Он знает, что ты продаёшь и кому. Помнит, как ты отвечаешь на «дорого» и каким тоном пишешь клиентам.

Он знает твои цели на год. Лендинг собирает в твоих цветах, КП пишет твоими словами, а за ценой идёт в прайс. И тебе не нужно рассказывать ему это заново в каждом разговоре.


Что такое второй мозг и зачем он нужен?

Коротко

Второй мозг - папка с текстовыми файлами о твоём бизнесе, которую Claude Code читает сам. С ней не нужно в каждом разговоре заново объяснять, кто ты и что продаёшь.

В папке лежит всё, что Claude должен знать: кто ты, что продаёшь, твои правила, термины, цели и документы. В начале каждой сессии Claude Code читает твои правила, а в нужный файл заглядывает сам, когда задаче нужна конкретика.

Без этой папки каждый разговор начинается с нуля. Так устроен сам Claude Code, это написано в его документации: каждая сессия стартует с чистого контекста. Поэтому ты по кругу объясняешь, чем занимаешься, и получаешь лендинг в чужом стиле.

Модель тут ни при чём, и курсы по промптам это не лечат. У Claude просто нет твоего бизнеса.

Без второго мозгаСо вторым мозгом
Что ты делаешь в началеобъясняешь заново в каждом чатесразу пишешь задачу
Цены и реквизитыClaude подставляет правдоподобныеберёт из файла-источника или спрашивает
Стильлендинг в чужих цветах и чужим тономцвета и тон из твоего брендбука
ЦелиClaude о них не знаетсверяет с ними свои предложения
Новые знанияпропадают вместе с чатомClaude предлагает записать их в базу
Смена нейросетивсё с началабаза остаётся у тебя, её прочитает любая модель

Откуда взялась идея второго мозга?

Коротко

Хранить знания во внешней системе, чтобы голова была свободна для мыслей, придумали задолго до нейросетей. Теперь такую систему ведёт сама нейросеть.

«Голова нужна, чтобы придумывать идеи, а не держать их в себе»

Дэвид Аллен, автор Getting Things Done. Эту мысль цитирует Тиаго Форте в книге Building a Second Brain

Андрей Карпатый, сооснователь OpenAI, весной 2026 года показал такую схему у себя: нейросеть сама ведёт базу из текстовых файлов, а он в неё почти не пишет. По одной теме база выросла примерно до ста статей.

Я сам так работаю каждый день. Структура в промпте ниже взята из моего собственного второго мозга.


Что нужно, чтобы начать?

Коротко

Claude Code и подписка Claude. Папку, файлы и вопросы Claude Code возьмёт на себя.

Если Claude Code ещё не установлен, поставь его по официальной инструкции: там одна команда.

Важно. Запускай Claude Code из папки, где будет жить мозг, или из папки выше. Из соседней папки он мозг не увидит, и покажется, что затея не работает.

Если по ходу что-то не встанет или захочется сразу понять, куда в твоём бизнесе ставить систему, приходи на бесплатный разбор. Посмотрим твой процесс, а заодно разберём и второй мозг.


Что сделает Claude Code после промпта?

Коротко

Ты делаешь один шаг: вставляешь промпт. Дальше Claude Code сам ведёт тебя по восьми шагам и ничего не записывает без твоего «да».

Открой Claude Code в папке, из которой обычно работаешь. Скопируй промпт ниже и отправь.

  1. Спросит, где поселить мозг. Claude Code видит правила только из папки, в которой ты его запустил, и из папок выше. Поэтому этот вопрос первый.
  2. Развернёт структуру. Файл правил, указатель, карточка бизнеса, словарь, цели, журнал. Через указатель Claude открывает только тот файл, что нужен под задачу, и не забивает разговор лишним.
  3. Предложит интервью на выбор. Короткое - быстро записать самое важное о бизнесе и начать пользоваться уже сегодня. Расширенное - около часа, зато мозг знает бизнес подробно. После каждого блока вопросов черновик сохраняется в файл: оборвётся сессия, ответы не пропадут.
  4. Заведёт таблицу целей. Предложит на выбор: файлом в папке мозга или Google-таблицей, и скажет, чем они отличаются. Цели записаны в одном месте, а не в голове, поэтому Claude сверяет с ними план недели, идеи и задачи.
  5. Попросит твои документы. Прайс, КП, скрипты продаж, переписки с клиентами, регламенты, отзывы, брендбук. Разложит по местам и коротко перескажет каждый в базе.
  6. Покажет каждый файл до записи. Ничего не пишет молча. Ты читаешь черновик, правишь, говоришь «да».
  7. Научит мозг пополняться. Поставит скилл и маленький хук: раз в шесть твоих сообщений Claude сам перечитывает разговор и предлагает, что записать в мозг. Ты отвечаешь «да» или вычёркиваешь лишнее, и база растёт, даже если ты про неё забыл.
  8. Проверит себя. Попросит открыть новую сессию и задать вопрос, на который нельзя ответить без базы. Процитировал строку из твоего файла - мозг работает.

Так выглядит мозг после сборки, если открыть папку в Obsidian:

Папка второго мозга: слева файлы и документы, справа указатель
Папка второго мозга: слева файлы и документы, справа указатель

А так выглядит таблица целей, если выбрать Google:

Таблица целей в Google: цель, как пойму, что достиг, срок, что к ней ведёт, статус, где смотреть факт
Таблица целей в Google: цель, как пойму, что достиг, срок, что к ней ведёт, статус, где смотреть факт

Промпт

Коротко

Скопируй промпт целиком и отправь в Claude Code. Можно скачать его файлом и открыть позже.

Промпт · 651 строк
Скачать файлом
Показать промпт целиком
Ты разворачиваешь у меня второй мозг бизнеса - базу знаний в обычных
текстовых файлах, из которой ты и любая другая нейросеть будете работать
со мной дальше. Веди меня по шагам ниже. Говори простым языком: я не
программист.

ОБЩИЕ ПРАВИЛА
- Один шаг за раз. Не вываливай все вопросы сразу.
- Ничего не выдумывай за меня. Не знаешь - спроси или поставь пометку
  «уточнить».
- Каждый файл мозга показывай черновиком до записи и жди моего «да».
  Исключение - черновик-интервью.md: его сохраняй сразу (шаг 3).
- Пароли, ключи и токены в файлы не пиши. Пиши только, где они лежат.
- Цифры, которые меняются (цены, остатки, выручка), в карточки не пиши.
  Пиши, где лежит актуальное значение.
- Если я вернулся после обрыва сессии - сначала прочитай
  черновик-интервью.md и log.md и продолжи с того места, где остановились.

ШАГ 1. ГДЕ ЖИВЁТ МОЗГ
Спроси, из какой папки я обычно запускаю Claude Code и работаю ли я из
разных папок. Объясни простыми словами: ты подхватываешь правила из папки
запуска и из папок выше неё, но не из соседних.
- Работаю из одной папки - создай мозг в подпапке «второй-мозг» внутри
  неё, а правила положи в CLAUDE.md этой рабочей папки.
- Работаю из разных - создай мозг там, где я скажу, а в мой личный файл
  ~/.claude/CLAUDE.md добавь короткий блок с абсолютным путём к мозгу.
  Перед правкой покажи, что именно добавишь.

ШАГ 2. СТРУКТУРА
Создай:
- Правила мозга - в том CLAUDE.md, который выбрали в шаге 1: CLAUDE.md
  рабочей папки или блок в ~/.claude/CLAUDE.md. Отдельный CLAUDE.md
  внутри папки мозга не создавай: из другой папки он не загрузится.
  Правила короче 200 строк. Внутри обязательно: первым делом
  открыть INDEX.md и оттуда идти в нужный файл; не выдумывать, а открыть
  файл или спросить; цифры и реквизиты брать только из файла-источника;
  появился новый важный факт - предложить записать и дождаться «да»;
  держать INDEX.md в актуальном состоянии.
- INDEX.md - единственная точка входа: по строке на файл, что внутри,
  и предупреждение, если оно есть.
- бизнес.md - карточка бизнеса.
- словарь.md - мои термины и адреса живых цифр, двумя разделами.
- цели.md - указатель на таблицу целей (шаг 4).
- документы/ - мои файлы (шаг 5).
- log.md - журнал: одна строка на действие, дата и что сделано.
- черновик-интервью.md - сюда пишутся ответы интервью.
Пустых папок про запас не создавай. Покажи мне дерево и одной фразой
объясни, зачем каждый файл.

ШАГ 3. ИНТЕРВЬЮ
Сначала объясни два режима и дай выбрать:
- Короткое - самое важное о бизнесе, чтобы мозгом можно было пользоваться
  уже сегодня. Потом можно пройти расширенное, ответы короткого не
  пропадут.
- Расширенное - около часа, все блоки подробно.
В коротком - блоки 1, 2 и 3, по два-три главных вопроса. В расширенном -
все блоки полностью.

Блок 1. Бизнес. Чем занимаюсь и для кого. Что продаю и чем позиции
отличаются друг от друга. Чем отличаюсь от конкурентов.
Блок 2. Что я объясняю по десять раз. Что приходится повторять помощнику,
подрядчику или тебе каждый раз заново. Как отвечаю на частые вопросы и
возражения клиентов. Работа, которой я доволен, и где вышло плохо. Если
затрудняюсь - приведи три примера чужих ответов для разгона.
Блок 3. Цели. Чего хочу добиться в бизнесе за год и за ближайший квартал.
Как пойму, что цель достигнута.
Блок 4. Мои слова. Как я называю вещи по-своему: что у меня заявка,
клиент, продукт, проба, когда затея считается закрытой. Спрашивай про мои
формулировки, не подставляй общепринятые.
Блок 5. Живые цифры и доступы. Какие числа у меня меняются и где лежат
актуальные: таблица, банк, CRM. Какие реквизиты и ссылки я копирую из
письма в письмо. Спрашивай, ГДЕ живёт значение, а не какое оно.
Блок 6. Фирменное. Цвета, шрифты, где лежат логотип и фотографии, каким
тоном я говорю с клиентами. Если у меня есть сайт - предложи прочитать
его и вытащить стиль самому.

После каждого блока сразу дописывай мои ответы в черновик-интервью.md,
не держи их в памяти до конца разговора. Отмечай в файле, какие блоки
пройдены. Если выбрано короткое интервью - в конце запиши туда, какие
вопросы расширенного остались.

ШАГ 4. ТАБЛИЦА ЦЕЛЕЙ
Сначала коротко объясни, что это и зачем:
- Таблица целей - одно место, где записаны мои цели: чего хочу, как
  пойму, что достиг, к какому сроку, что к цели ведёт, в каком она
  статусе и где смотреть факт.
- Ты сверяешь с ней свои предложения: план недели, идеи, задачи.
- Сроки, цифры и статусы живут только в таблице. В цели.md и в карточках -
  только ссылка на неё. Иначе файлы разойдутся с таблицей и начнут
  врать.

Потом дай выбор, где будет таблица, и честно назови последствия:
- Локально. Файл цели.csv в папке мозга. Открывается в Excel, Numbers
  или Google Таблицах. Настраивать ничего не надо. Ты сам читаешь и
  правишь файл, но каждую правку показываешь до записи.
- Через Google. Google-таблица на моём Google Диске, через коннектор
  Google Drive из claude.ai. Скажи прямо:
  - подключается весь мой Google Диск, а не одна таблица: ты сможешь
    искать и читать мои файлы на Диске;
  - ты создашь таблицу и сможешь её читать, но ячейки уже созданной
    таблицы править не можешь: статусы, сроки и новые строки вношу я
    сам, руками;
  - коннектор работает, только если я вошёл в Claude Code аккаунтом
    claude.ai, а не по API-ключу. В WSL-сессиях десктоп-приложения
    коннекторов пока нет. На тарифах Team и Enterprise коннектор
    добавляет только администратор;
  - один раз придётся настроить подключение, ты проведёшь по шагам.
- Не хочу заморачиваться - делаем локально. Это вариант по умолчанию:
  если я сомневаюсь или не выбрал, делай локально.

Колонки в обоих вариантах одинаковые, ровно в таком порядке:
Цель · Как пойму, что достиг · Срок · Что к ней ведёт · Статус ·
Где смотреть факт.
Статус - только одно из четырёх: не начато, в работе, достигнуто,
отложено.

Черновик строк собери из блока 3 интервью (черновик-интервью.md).
Одна цель - одна строка. Чего я не называл, пиши «уточнить»: не
придумывай сроки, цифры и где смотреть факт. Если я не назвал статус,
ставь «не начато». Покажи черновик таблицей в чате и жди моего «да».

Если выбрано «локально»:
- Создай цели.csv в папке мозга. Кодировка UTF-8 с BOM: так Excel на
  Windows правильно покажет русские буквы. Разделитель - запятая.
  Ячейку, в которой есть запятая, бери в кавычки.
- Скажи, как открыть: двойной клик. Если в Excel вместо букв
  кракозябры или всё в одном столбце - открыть через меню «Данные»,
  импорт из текстового или CSV-файла, кодировка UTF-8, разделитель
  запятая.
- Если я правил файл в Excel или Numbers и сохранил, при следующем
  обращении сначала прочитай файл и проверь, что колонки на месте.
  Сломалось - скажи мне, молча не чини.

Если выбрано «через Google» - веди по одному шагу, после каждого жди
моего «готово»:
1. Перед настройкой запиши в log.md строку: шаг 4, выбран Google,
   идёт подключение. Сессию, скорее всего, придётся перезапустить.
2. Открыть в браузере claude.ai/customize/connectors, найти Google
   Drive, подключить.
3. Войти в свой Google-аккаунт и разрешить доступ.
4. Вернуться в Claude Code, набрать /mcp и найти Google Drive в разделе
   коннекторов claude.ai. Нет в списке - закрыть Claude Code и открыть
   заново в той же папке, снова /mcp.
5. Всё ещё нет - набрать /status и посмотреть, как я вошёл. Если по
   API-ключу - /login и выбрать аккаунт claude.ai. Если у меня
   WSL-сессия десктоп-приложения - коннектор там пока не работает,
   предложи сделать локально.
6. Коннектор виден - создай на моём Диске Google-таблицу «Цели - <мой
   бизнес>» из согласованного черновика и дай мне ссылку.
7. Проверка: прочитай таблицу обратно и процитируй одну строку. Не
   прочиталась - дальше не иди, разбирайся или предложи локально.
Кроме таблицы целей ничего на моём Диске не открывай, не перемещай,
не удаляй и никому не давай доступ без моей просьбы.

Потом запиши цели.md - это не список целей, а указатель на таблицу:
- где таблица: путь к цели.csv или ссылка на Google-таблицу;
- что в колонках и какие бывают статусы;
- как ты к ней обращаешься: читаешь файл или читаешь таблицу через
  коннектор; кто вносит правки (ты с показом до записи или я руками);
- правило: цели, сроки, числа и статусы - только в таблице, в цели.md
  и карточках их не повторять.
Покажи цели.md до записи. После «да» добавь строку в INDEX.md и строку
в log.md.

В конце объясни, как с таблицей работать дальше:
- Предложи ритм, а не выдавай его за правило: например, раз в неделю
  обновлять статусы и раз в месяц пересматривать цели. Спроси, как
  удобно мне.
- Что мне говорить тебе: «сверь план недели с целями», «что из задач
  ближе к цели на квартал», «обнови статус цели X», «добавь цель».
- В локальном варианте правки вносишь ты, с показом до записи. В
  Google-варианте правки вношу я: ты подсказываешь, что поменять и в
  какой ячейке, потом перечитываешь таблицу.

Два правила из опыта, для обоих вариантов:
- Текст ячейки не начинай с «+», «=» или «-». Google Таблицы
  принимают такую ячейку за формулу и показывают ошибку #ERROR!.
  Нужен знак в начале - начни ячейку со слова.
- В Google-варианте таблицу сразу оформи, по шагам вместе со мной:
  закрепить строку заголовков; в колонке «Статус» сделать
  выпадающий список из четырёх статусов; строки со статусом
  «достигнуто» подсвечивать зелёным (условное форматирование). Ячейки
  через коннектор ты не правишь, поэтому объясняй мне, куда нажать,
  и жди «готово» после каждого действия. В локальном цели.csv
  оформления нет - пропусти.

ШАГ 5. ДОКУМЕНТЫ
Предложи загрузить мои документы: это самый быстрый способ дать мозгу
фактуру без долгих ответов. Приведи примеры под мой бизнес по итогам
интервью, например: прайс, коммерческие предложения, скрипты продаж,
выгрузки переписок с клиентами, регламенты и инструкции, отзывы,
брендбук, шаблоны договоров.
Объясни, как загрузить: положить файлы в папку «документы» и написать
тебе «готово».
По каждому файлу: оригинал оставь в «документы», короткий пересказ -
в карточку по теме, строку - в INDEX.md. Устаревшее не выбрасывай,
пометь «по этому уже не работаем». Персональные данные клиентов в
пересказы не переноси.

ШАГ 6. КАРТОЧКИ
Из черновика интервью и документов собери файлы мозга. Показывай каждый
до записи, жди моего «да», мои правки вноси дословно.

ШАГ 7. АВТОНАПОЛНЕНИЕ
Сначала объясни, зачем это, простыми словами:
- Без этого шага мозг пополняется, только когда я вспомню. Я не
  вспомню, и через месяц мозг устареет.
- Ты поставишь три вещи: скилл «пополнение мозга», правило в CLAUDE.md
  и маленький скрипт-счётчик (хук).
- Хук ничего не пишет в мозг и никуда не ходит. Он считает мои
  сообщения и раз в 6 сообщений напоминает тебе сверить разговор с
  мозгом.
- Ты показываешь мне список «факт → куда записать» и ждёшь ответа.
  Записываешь только то, на что я сказал «да». Нечего предложить -
  молчишь.
- Хук работает, только когда я сижу в сессии. В запусках без человека
  (claude -p, скрипты) он молчит.
- Раз в 6 сообщений уходит один лишний ход - это немного токенов.
- Встроенную автопамять Claude Code это не трогает, но мозг на неё не
  опирается: факты о бизнесе живут только в файлах мозга.
Спроси, ставим ли. Без моего «да» ничего не ставь. Отказался - запиши
в log.md «автонаполнение не ставили» и переходи к шагу 8.

Если я сказал «да»:
1. Определи сам, какая у меня система: macOS, Linux, WSL или Windows.
   Скажи мне, что определил.
2. Файлы ниже записывай дословно, байт в байт: всё, что стоит между
   строкой «===== ФАЙЛ: … =====» и строкой «===== КОНЕЦ ФАЙЛА =====»,
   сами эти строки не входят. Ничего не переводи, не исправляй, не
   сокращай и не переформатируй. Скрипт по памяти не переписывай.
   Файлы с пометкой НАСТРОЙКИ и СТРОКА ПРАВИЛА - не отдельные файлы,
   это куски, которые вставляются в другие файлы (пункты 4 и 5).
3. Выбери место по тому, что решили в шаге 1:
   - Мозг в подпапке рабочей папки. Скилл - в
     .claude/skills/popolnenie-mozga/SKILL.md рабочей папки. Скрипт -
     в .claude/hooks рабочей папки.
   - Мозг в другом месте. Скилл - в
     ~/.claude/skills/popolnenie-mozga/SKILL.md. Скрипт - в
     ~/.claude/hooks.
   На macOS, Linux и WSL нужен скрипт mozg-sverka.sh, на Windows -
   mozg-sverka.ps1. Второй скрипт не записывай.
4. Хук. Возьми кусок НАСТРОЙКИ под мою систему и место:
   - macOS, Linux, WSL, мозг в подпапке - в файл
     .claude/settings.local.json рабочей папки; замени
     /АБСОЛЮТНЫЙ/ПУТЬ/К/РАБОЧЕЙ/ПАПКЕ на полный путь к рабочей папке.
   - macOS, Linux, WSL, мозг в другом месте - в ~/.claude/settings.json,
     без замен.
   - Windows - в .claude\settings.local.json рабочей папки (мозг в
     подпапке) или в %USERPROFILE%\.claude\settings.json (мозг в
     другом месте); замени C:\\Users\\ИМЯ\\.claude\\hooks\\mozg-sverka.ps1
     на полный путь к записанному скрипту, обратные косые черты
     в JSON удваиваются.
   Путь в настройках меняй только этот, остальное - дословно. Если
   файл настроек уже есть - добавь хук к тому, что там есть, ничего не
   удаляя и не меняя.
5. СТРОКУ ПРАВИЛА добавь в тот CLAUDE.md, где записаны правила мозга
   (шаг 1): в CLAUDE.md рабочей папки или в блок про мозг в
   ~/.claude/CLAUDE.md.
6. Перед записью покажи мне, какие файлы и куда ты кладёшь и что
   добавишь в настройки и CLAUDE.md. Жди «да».
7. Проверь, что записал дословно: сравни записанные файлы с текстом
   между разделителями. Потом запусти скрипт на пустом вводе и
   убедись, что он ничего не выводит и не падает. На macOS, Linux,
   WSL: sh путь-к-скрипту < /dev/null. На Windows:
   powershell.exe -NoProfile -ExecutionPolicy Bypass -File
   путь-к-скрипту, ввод пустой.
8. Покажи, как это будет выглядеть: после шестого моего сообщения под
   твоим ответом появится строка «Stop hook feedback: Сверка со вторым
   мозгом…», дальше ты покажешь список «Что записать в мозг».
9. Скажи, что скилл и правило заработают в новой сессии, а проверим
   всё в шаге 8.

===== ФАЙЛ: popolnenie-mozga/SKILL.md =====
---
name: popolnenie-mozga
description: |
  Сверить мои реплики в этой сессии со вторым мозгом: найти факты о бизнесе, которые стоит
  сохранить, проверить, нет ли их уже в мозге, предложить нумерованным списком «факт → файл»
  и записать только то, на что я ответил «да».

  Use when: «что записать в мозг», «сверь сессию с мозгом», «пополни мозг», «что из разговора
  сохранить», хук сверки с мозгом сообщил, что набрались новые реплики (№a–№b), конец рабочей
  сессии.
---

# Пополнение второго мозга

Задача скилла — предложить записи, а не записать. В мозг ничего не пишется молча.

Встроенная автопамять Claude Code — не мозг. Не опирайся на неё: «уже сохранено в памяти» не
значит «есть в мозге». Проверяй только файлы мозга. Факты мозга пиши только в файлы мозга
и только после моего «да».

## 1. Какие реплики брать

- Хук назвал номера «№a–№b» — считаются только реплики, набранные человеком. Бери последние
  `b − a + 1` таких реплик.
- Позвали фразой — бери все мои реплики в этой сессии.

Реплика человека бывает трёх видов, бери все три:

1. обычное сообщение, которое я отправил;
2. мой ответ в окне с вопросами и вариантами ответа;
3. сообщение, которое я отправил, пока ты ещё работал над прошлым ходом.

Не реплики: результаты инструментов, системные вставки, сообщения хуков, уведомления фоновых задач.

## 2. Найти мозг

- Открой CLAUDE.md, который действует в этой сессии: CLAUDE.md рабочей папки или блок
  о втором мозге в `~/.claude/CLAUDE.md`. Там написано, где лежит мозг.
- В мозге первым делом открой `INDEX.md`. Файлы выбирай только через него.
- Мои слова сверяй со `словарь.md`: называй вещи так, как называю их я.

## 3. Что считается фактом

Бери то, что пригодится и через месяц и чего нет в файлах мозга:

- о бизнесе: продукты, клиенты, люди, поставщики, как устроена работа;
- мои решения и почему я их принял, что я отверг;
- мои термины и что они значат;
- где что лежит: таблица, CRM, папка, сервис;
- цели и договорённости — но сроки, статусы и цифры целей живут в таблице целей, в файл
  пишется только ссылка на неё.

Не бери:

- ход текущей задачи и свои выводы, которых я не говорил;
- пароли, ключи, токены — только где они лежат;
- цифры, которые меняются (цены, остатки, выручка) — только где лежит актуальное значение;
- персональные данные клиентов.

## 4. Проверить, нет ли уже

По каждому кандидату поищи ключевые слова по папке мозга (Grep). Уже записано так же —
не предлагай. Записано иначе или противоречит — предложи и скажи прямо: «в файле X сейчас
написано так-то, в разговоре — иначе».

## 5. Показать и ждать

Одним сообщением, нумерованно, по образцу:

    Что записать в мозг:
    1. <факт одной строкой>
       «<мои слова из разговора>» → <файл мозга>, раздел
    2. ...
    Ответь: «да» — записать всё, номера — только выбранное, или поправь формулировку.

Дальше жди ответа. Без ответа не пиши ничего.

## 6. Записать одобренное

- Только выбранные пункты, мои правки — дословно.
- Появился новый файл — добавь строку в `INDEX.md`.
- Добавь строку в `log.md`: дата и что куда записано.

## Если предлагать нечего

Не пиши ничего: ни «ничего не нашёл», ни «сверка пройдена». Заверши ход без текста.
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: mozg-sverka.sh =====
#!/bin/sh
# Stop-хук «сверка с мозгом» (macOS, Linux, WSL, Git Bash).
#
# Раз в N новых реплик человека просит Claude вызвать скилл popolnenie-mozga.
# Сам в мозг ничего не пишет и ничего не решает: без python, без jq, без сети.
# Любая поломка — молчим и выходим с кодом 0: сессия важнее хука.
#
# Настройки через переменные окружения (все необязательные):
#   MOZG_SVERKA_POROG  сколько новых реплик нужно для сверки, по умолчанию 6
#   MOZG_SVERKA_OKNO   сколько последних реплик максимум отдать в одну сверку, по умолчанию 30
#   MOZG_SVERKA_DIR    где хранить курсоры и журнал, по умолчанию ~/.cache/mozg-sverka
#
# Реплика человека — строка транскрипта, где есть "type":"user" и
# "origin":{"kind":"human"} и нет isMeta / isSidechain / isCompactSummary и
# слэш-команды. Внутри текста реплик кавычки экранированы (\"), поэтому эти
# подстроки встречаются только в разметке записи, а не в словах человека.
# Промпты `claude -p` поля origin не имеют и не считаются.

# Байтовая локаль: grep/sed/tr не спотыкаются о русские буквы и не уходят в режим «binary file».
LC_ALL=C
export LC_ALL

POROG="${MOZG_SVERKA_POROG:-6}"
OKNO="${MOZG_SVERKA_OKNO:-30}"
DIR="${MOZG_SVERKA_DIR:-${XDG_CACHE_HOME:-$HOME/.cache}/mozg-sverka}"
case "$POROG" in ''|*[!0-9]*|0) POROG=6 ;; esac
case "$OKNO" in ''|*[!0-9]*|0) OKNO=30 ;; esac

vstup=$(cat 2>/dev/null | tr -d '\r\n') || exit 0
sid=$(printf '%s' "$vstup" | sed -n 's/.*"session_id" *: *"\([^"]*\)".*/\1/p')
put=$(printf '%s' "$vstup" | sed -n 's/.*"transcript_path" *: *"\([^"]*\)".*/\1/p')

zhurnal() {
  mkdir -p "$DIR" 2>/dev/null &&
    printf '%s %s %s\n' "$(date '+%Y-%m-%dT%H:%M:%S')" "${sid:-?}" "$*" >> "$DIR/journal.log" 2>/dev/null
  return 0
}

# 1. Claude уже продолжает ход по просьбе Stop-хука — не зацикливаемся.
case "$vstup" in
  *'"stop_hook_active":true'*|*'"stop_hook_active": true'*) zhurnal skip_active; exit 0 ;;
esac

# 2. Запуск без человека (claude -p, скрипты): инжект сломал бы чужой вывод.
if [ "${CLAUDE_CODE_SESSION_ATTENDED:-}" = "0" ] || [ "${CLAUDE_CODE_ENTRYPOINT:-}" = "sdk-cli" ]; then
  zhurnal skip_headless; exit 0
fi

if [ -z "$sid" ] || [ -z "$put" ] || [ ! -f "$put" ]; then
  zhurnal error no_transcript; exit 0
fi

# 3. Считаем реплики человека. Три канала:
#   k1 — обычное сообщение: "type":"user" + "origin":{"kind":"human"};
#   k2 — ответ в окне вопросов (AskUserQuestion): "type":"user" + toolUseResult с questions и answers;
#   k3 — сообщение, отправленное посреди хода: "type":"attachment" + queued_command,
#        commandMode prompt, origin human (commandMode task-notification — не человек).
# Служебные записи (isMeta, субагенты, пересказ после компакта) выкидываем сразу.
chistye() {
  grep -a -v -F -e '"isMeta":true' -e '"isSidechain":true' -e '"isCompactSummary":true' "$put" 2>/dev/null
}
k1=$(chistye | grep -a -F '"type":"user"' | grep -a -F '"origin":{"kind":"human"}' |
  grep -a -v -F -e '"content":"<command-' -e '"type":"tool_result"' | wc -l | tr -d ' ')
k2=$(chistye | grep -a -F '"type":"user"' | grep -a -F '"toolUseResult":{"questions":[' |
  grep -a -F '"answers":{' | wc -l | tr -d ' ')
k3=$(chistye | grep -a -F '"type":"attachment"' | grep -a -F '"type":"queued_command"' |
  grep -a -F '"commandMode":"prompt"' | grep -a -F '"origin":{"kind":"human"}' | wc -l | tr -d ' ')
case "$k1$k2$k3" in ''|*[!0-9]*) zhurnal error count; exit 0 ;; esac
vsego=$((k1 + k2 + k3))

imya=$(printf '%s' "$sid" | tr -c 'A-Za-z0-9_.-' '_')
kursor=$(cat "$DIR/$imya" 2>/dev/null)
case "$kursor" in ''|*[!0-9]*) kursor=0 ;; esac
[ "$kursor" -gt "$vsego" ] && kursor=$vsego
novyh=$((vsego - kursor))

if [ "$novyh" -lt "$POROG" ]; then
  zhurnal below_threshold "total=$vsego cursor=$kursor new=$novyh"
  exit 0
fi

# 4. Порог набран: сдвигаем курсор и просим сверку.
a=$((kursor + 1))
[ $((vsego - OKNO + 1)) -gt "$a" ] && a=$((vsego - OKNO + 1))
b=$vsego

mkdir -p "$DIR" 2>/dev/null || exit 0
printf '%s\n' "$vsego" > "$DIR/$imya.tmp" 2>/dev/null && mv -f "$DIR/$imya.tmp" "$DIR/$imya" 2>/dev/null || exit 0
# Курсоры закрытых сессий старше 30 дней убираем.
find "$DIR" -type f ! -name journal.log -mtime +30 -exec rm -f {} + 2>/dev/null
zhurnal fired "total=$vsego cursor=$kursor new=$novyh range=$a-$b"

# Текст — в виде \uXXXX, чтобы не зависеть от кодировки терминала.
printf '{"hookSpecificOutput":{"hookEventName":"Stop","additionalContext":"%s%d%s%d%s%d%s"}}\n' \
  '\u0421\u0432\u0435\u0440\u043a\u0430 \u0441\u043e \u0432\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0437\u0433\u043e\u043c: \u0441 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0432\u0435\u0440\u043a\u0438 \u043d\u0430\u0431\u0440\u0430\u043b\u043e\u0441\u044c ' \
  "$novyh" \
  ' \u043d\u043e\u0432\u044b\u0445 \u0440\u0435\u043f\u043b\u0438\u043a \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430, \u044d\u0442\u043e \u0440\u0435\u043f\u043b\u0438\u043a\u0438 \u2116' \
  "$a" \
  '\u2013\u2116' \
  "$b" \
  ' \u044d\u0442\u043e\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 (\u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u043f\u043b\u0438\u043a\u0438, \u043d\u0430\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u043c). \u041f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0443 \u0438\u0437 CLAUDE.md \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043a\u0438\u043b\u043b popolnenie-mozga \u043f\u043e \u044d\u0442\u0438\u043c \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u043c. \u0415\u0441\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043c\u043e\u0437\u0433 \u043d\u0435\u0447\u0435\u0433\u043e, \u0445\u043e\u0434 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0442\u0435\u043a\u0441\u0442\u0430.'
exit 0
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: mozg-sverka.ps1 =====
# Stop hook "mozg-sverka" for Windows (PowerShell 5.1 and 7+), works without Git Bash.
#
# Every N new human replies it asks Claude to run the popolnenie-mozga skill.
# It never writes to the brain itself. Any failure: stay silent, exit 0.
#
# The file is ASCII only on purpose: Windows PowerShell 5.1 reads a .ps1 without
# BOM in the ANSI code page, so Cyrillic literals would be garbled. The Russian
# message is stored as JSON \uXXXX escapes.
#
# Optional environment variables:
#   MOZG_SVERKA_POROG  new human replies needed for a check, default 6
#   MOZG_SVERKA_OKNO   max replies passed to one check, default 30
#   MOZG_SVERKA_DIR    state folder, default %LOCALAPPDATA%\mozg-sverka

$ErrorActionPreference = 'Stop'
$sid = '?'
$dir = $env:MOZG_SVERKA_DIR
if (-not $dir) { $dir = Join-Path ([Environment]::GetFolderPath('LocalApplicationData')) 'mozg-sverka' }

function Write-Journal([string]$text) {
    try {
        if (-not (Test-Path -LiteralPath $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null }
        $line = (Get-Date -Format 'yyyy-MM-ddTHH:mm:ss') + ' ' + $script:sid + ' ' + $text + "`n"
        [System.IO.File]::AppendAllText((Join-Path $dir 'journal.log'), $line)
    } catch { }
}

try {
    $porog = 6; if ($env:MOZG_SVERKA_POROG -match '^[1-9][0-9]*$') { $porog = [int]$env:MOZG_SVERKA_POROG }
    $okno = 30; if ($env:MOZG_SVERKA_OKNO -match '^[1-9][0-9]*$') { $okno = [int]$env:MOZG_SVERKA_OKNO }

    # stdin is UTF-8 JSON; read it as UTF-8 so a Cyrillic user name in the path survives.
    $reader = New-Object System.IO.StreamReader([Console]::OpenStandardInput(), (New-Object System.Text.UTF8Encoding($false)))
    $raw = $reader.ReadToEnd()
    $inp = $raw | ConvertFrom-Json
    if ($inp.session_id) { $sid = [string]$inp.session_id }

    # 1. Claude is already continuing because of a Stop hook: do not loop.
    if ($inp.stop_hook_active -eq $true) { Write-Journal 'skip_active'; exit 0 }

    # 2. Run without a human (claude -p, scripts): an injection would break someone's output.
    if ($env:CLAUDE_CODE_SESSION_ATTENDED -eq '0' -or $env:CLAUDE_CODE_ENTRYPOINT -eq 'sdk-cli') {
        Write-Journal 'skip_headless'; exit 0
    }

    $path = [string]$inp.transcript_path
    if (-not $path -or -not (Test-Path -LiteralPath $path -PathType Leaf)) { Write-Journal 'error no_transcript'; exit 0 }

    # 3. Count human replies, three channels:
    #   1) plain message: "type":"user" + "origin":{"kind":"human"}
    #   2) answer in a question window (AskUserQuestion): "type":"user" + toolUseResult with questions and answers
    #   3) message sent mid-turn: "type":"attachment" + queued_command, commandMode prompt, origin human
    # FileShare ReadWrite: Claude Code may hold the file open for writing.
    $total = 0
    $fs = New-Object System.IO.FileStream($path, [System.IO.FileMode]::Open, [System.IO.FileAccess]::Read, [System.IO.FileShare]::ReadWrite)
    $sr = New-Object System.IO.StreamReader($fs, (New-Object System.Text.UTF8Encoding($false)))
    try {
        while ($null -ne ($line = $sr.ReadLine())) {
            if ($line.Contains('"isMeta":true') -or $line.Contains('"isSidechain":true') -or $line.Contains('"isCompactSummary":true')) { continue }
            $human = $line.Contains('"origin":{"kind":"human"}')
            if ($line.Contains('"type":"user"')) {
                if ($human -and -not $line.Contains('"content":"<command-') -and -not $line.Contains('"type":"tool_result"')) { $total++ }
                if ($line.Contains('"toolUseResult":{"questions":[') -and $line.Contains('"answers":{')) { $total++ }
            } elseif ($line.Contains('"type":"attachment"')) {
                if ($human -and $line.Contains('"type":"queued_command"') -and $line.Contains('"commandMode":"prompt"')) { $total++ }
            }
        }
    } finally { $sr.Dispose(); $fs.Dispose() }

    $name = $sid -replace '[^A-Za-z0-9_.-]', '_'
    $cursorFile = Join-Path $dir $name
    $cursor = 0
    if (Test-Path -LiteralPath $cursorFile) {
        $c = ([System.IO.File]::ReadAllText($cursorFile)).Trim()
        if ($c -match '^[0-9]+$') { $cursor = [int]$c }
    }
    if ($cursor -gt $total) { $cursor = $total }
    $new = $total - $cursor

    if ($new -lt $porog) { Write-Journal "below_threshold total=$total cursor=$cursor new=$new"; exit 0 }

    # 4. Threshold reached: move the cursor and ask for a check.
    $a = $cursor + 1
    if (($total - $okno + 1) -gt $a) { $a = $total - $okno + 1 }
    $b = $total

    if (-not (Test-Path -LiteralPath $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null }
    [System.IO.File]::WriteAllText($cursorFile + '.tmp', "$total")
    Move-Item -LiteralPath ($cursorFile + '.tmp') -Destination $cursorFile -Force
    try {
        Get-ChildItem -LiteralPath $dir -File | Where-Object { $_.Name -ne 'journal.log' -and $_.LastWriteTime -lt (Get-Date).AddDays(-30) } | Remove-Item -Force
    } catch { }
    Write-Journal "fired total=$total cursor=$cursor new=$new range=$a-$b"

    $p1 = '\u0421\u0432\u0435\u0440\u043a\u0430 \u0441\u043e \u0432\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0437\u0433\u043e\u043c: \u0441 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0432\u0435\u0440\u043a\u0438 \u043d\u0430\u0431\u0440\u0430\u043b\u043e\u0441\u044c '
    $p2 = ' \u043d\u043e\u0432\u044b\u0445 \u0440\u0435\u043f\u043b\u0438\u043a \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430, \u044d\u0442\u043e \u0440\u0435\u043f\u043b\u0438\u043a\u0438 \u2116'
    $p3 = '\u2013\u2116'
    $p4 = ' \u044d\u0442\u043e\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 (\u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u043f\u043b\u0438\u043a\u0438, \u043d\u0430\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u043c). \u041f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0443 \u0438\u0437 CLAUDE.md \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043a\u0438\u043b\u043b popolnenie-mozga \u043f\u043e \u044d\u0442\u0438\u043c \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u043c. \u0415\u0441\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043c\u043e\u0437\u0433 \u043d\u0435\u0447\u0435\u0433\u043e, \u0445\u043e\u0434 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0442\u0435\u043a\u0441\u0442\u0430.'
    $json = '{"hookSpecificOutput":{"hookEventName":"Stop","additionalContext":"' + $p1 + $new + $p2 + $a + $p3 + $b + $p4 + '"}}'
    [Console]::Out.Write($json)
    exit 0
} catch {
    Write-Journal ('error ' + $_.Exception.GetType().Name)
    exit 0
}
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: НАСТРОЙКИ macOS-Linux-WSL, мозг в подпапке рабочей папки =====
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "sh \"/АБСОЛЮТНЫЙ/ПУТЬ/К/РАБОЧЕЙ/ПАПКЕ/.claude/hooks/mozg-sverka.sh\"",
            "timeout": 30
          }
        ]
      }
    ]
  }
}
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: НАСТРОЙКИ macOS-Linux-WSL, мозг в другом месте =====
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "sh \"$HOME/.claude/hooks/mozg-sverka.sh\"",
            "timeout": 30
          }
        ]
      }
    ]
  }
}
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: НАСТРОЙКИ Windows =====
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "powershell.exe",
            "args": [
              "-NoProfile",
              "-ExecutionPolicy",
              "Bypass",
              "-File",
              "C:\\Users\\ИМЯ\\.claude\\hooks\\mozg-sverka.ps1"
            ],
            "timeout": 30
          }
        ]
      }
    ]
  }
}
===== КОНЕЦ ФАЙЛА =====

===== ФАЙЛ: СТРОКА ПРАВИЛА =====
- Пополнение мозга: когда хук сверки с мозгом сообщает, что набрались новые реплики, или я прошу «что записать в мозг», вызови скилл popolnenie-mozga. Он только предлагает; в мозг записывается то, на что я ответил «да».
===== КОНЕЦ ФАЙЛА =====

ШАГ 8. ПРИЁМКА
Не считай работу законченной, пока я не проверю. Продиктуй мне по шагам:
закрыть эту сессию; открыть новую в той же папке; набрать /context и
найти CLAUDE.md в списке файлов памяти; если ставили автонаполнение,
набрать /skills и найти popolnenie-mozga, а в /hooks найти хук в
разделе Stop; задать вопрос, ответ на который
нельзя угадать без базы, и попросить процитировать строку из файла.
Жди моего результата. Не сработало - разберись, в чём дело, начиная
с шага 1.

В КОНЦЕ
Коротко перечисли, что создано, что осталось (например, расширенное
интервью) и как пользоваться мозгом дальше.

Что изменится после сборки?

Коротко

Ты открываешь Claude Code и сразу пишешь задачу, не объясняя, кто ты. Цены он берёт из прайса, стиль из брендбука, а предложения сверяет с целями.

«Напиши КП клиенту из вчерашней переписки». «Собери лендинг под новый продукт». «Что из задач на неделю ближе к цели на квартал».

Claude уже знает, что ты продаёшь, по каким ценам, каким языком говоришь с клиентами и куда идёшь. Если чего-то не знает, говорит об этом и спрашивает.

Каждая задача оставляет в мозге след, и со временем Claude знает твой бизнес всё подробнее. Всё это лежит у тебя: сменишь нейросеть, заберёшь базу с собой.


Источники

Спасибо, что дочитал.Антон Ахтариев

Приходи на разбор

Второй мозг делает так, что Claude понимает твой бизнес. Куда именно в бизнесе ставить систему, он не подскажет.

А узкое горлышко есть в любом бизнесе. Место, где всё упирается, где тратится лишнее или руками делается то, что руками давно можно не делать. Внедришься ты потом или нет, оно там всё равно есть, и его можно автоматизировать, упростить или усилить.

Если хочешь найти его вместе, я провожу разборы. Созвон, на котором смотрим твой процесс и находим, где горлышко у тебя.

И если мозг не собрался, промпт где-то застрял или база перестала пополняться, приходи с этим же. На разборе разберём и это.

Сейчас разбор бесплатный: мне нужны живые процессы, чтобы понимать, с чем люди приходят.