# База знаний

> Как модель в Buff Code читает базу знаний организации и проекта, как предлагает новую запись и почему запись появляется только после вашего подтверждения.

[База знаний](/docs/knowledge) организации — правила работы, факты о проектах и ловушки
окружения — доходит до модели в Buff Code так же, как до каждого прогона платформы. Ничего
переносить или настраивать не нужно: знания подключаются по [рабочему контексту](/docs/buff-code/sign-in)
— организация, проект, выбранные пространства.

## Что модель читает

При старте сессии модель получает оглавление базы знаний: обязательные записи — целиком,
остальные — заголовком и одной строкой описания. Дальше она дочитывает нужную запись сама,
инструментом чтения, когда вопрос её касается. Это тот же порядок, что в задачах платформы:
см. [Как это доходит до модели](/docs/knowledge/prompt).

Область знаний — по контексту:

| Выбрано в Buff Code | Что видит модель |
| --- | --- |
| Организация | записи уровня организации |
| Организация и проект | плюс записи проекта |
| Пространства знаний (`/space`) | плюс записи выбранных пространств |

Без выбранной организации знаний нет — Buff Code подскажет `/org`.

Инструменты сервера **knowledge** называются так же, как в прогонах платформы:
`knowledge_list_entries`, `knowledge_read_entry`, `knowledge_write_entry`. Их видно в `/mcps`.

## Как появляется новая запись

Модель предлагает запись сама — в момент, когда вы просите что-то запомнить, формулируете
правило, когда она выяснила устойчивый факт об окружении или нашла обход препятствия. **Без
вашего «да» ничего не записывается.**

Buff Code показывает запрос **«Запрос от «База знаний»»** с записью целиком: заголовок, тип
(правило, факт, ловушка), область (вся организация или проект), имя и текст.

- **В окне** — над полем ввода, кнопки **«Не сейчас»** и **«Добавить эту запись в базу знаний»**.
- **В терминале** — вопрос «Добавить эту запись в базу знаний» с вариантами **«Да»** и **«Нет»**
  (по умолчанию «Нет»): стрелками выбрать, Enter — отправить, Esc — закрыть запрос.

_Иллюстрация: Разработчик попросил записать правило команды. Модель проверила оглавление базы знаний и предложила запись — она появится только после «Да»._

_Иллюстрация: То же в окне: запрос над полем ввода (обведён). «Не сейчас» — запись не появится, модель её больше не предложит._

- Подтвердили — запись появляется в [базе знаний](/docs/knowledge) от вашего имени; событие
  «Создано знание «…» из Buff Code» попадает в [журнал аудита](/docs/audit-log).
- Отказались — модель получает «не записано» и эту запись больше не предлагает.

Записи в Buff Code создаются только так: править или архивировать записи из Buff Code нельзя —
это делается в кабинете. Насовсем запись не удаляется: убранная уходит в [архив](/docs/knowledge/archive).

## Почему в `buff run` записи нет

`buff run` выполняет задание без вопросов к человеку и отменяет любые формы подтверждения.
Поэтому предложение записать знание в этом режиме не выполняется: модель получит «не записано».
Хотите, чтобы модель пополняла базу знаний, — работайте в интерфейсе Buff Code.

## Права

Читать базу знаний в Buff Code может любой участник организации с доступом к проекту.
Предложить запись — тоже любой: подтверждение формой считается вашим действием, и запись
создаётся от вашего имени по вашим [правам в базе знаний](/docs/knowledge/permissions).
