Заметки: запись, правка, проверка
Запись, правка, конфликты etag, verified, stale_after
Формат заметки
Markdown с YAML frontmatter. Обязательные поля: type (задаётся сервером по типу), title, description
(одно предложение, показывается в поиске), тело не короче 20 символов. До 10 тегов (slug-строки), links —
ссылки на другие заметки блокнота вида /decisions/x.md, sources, stale_after.
Поля из required типа блокнота обязательны.
Агент не может менять поля type, generated, status, verified: их ставит сервер или человек.
Жизнь заметки
Агент пишет заметку через
notebook_write— статусdraft.Человек проверяет и подтверждает:
uv run okf-notebooks verify kube-platform /decisions/use-argocd uv run okf-notebooks mark kube-platform /decisions/use-argocd --status stable uv run okf-notebooks mark kube-platform /decisions/old-way --status deprecatedЕсли агент изменит проверенную заметку,
verifiedснимается, аstableвозвращается вdraft(в ответе приходит предупреждениеverified-reset/status-reset). Заметкаdeprecatedостаётся устаревшей — это решение человека.
По умолчанию поиск не показывает deprecated; их можно запросить явно через status.
stale_after
Тип может задать срок устаревания (stale_after: 180d). Сервер подставляет его в новую заметку, если автор
не указал другой. Некорректное значение в шаблоне даёт предупреждение stale-after, а запись типа не ломает.
Поиск и чтение
notebook_search— полнотекстовый (bm25, русский и английский), фильтры:notebook,types,tags,status.notebook_list— постраничный список сcursor.notebook_read— тело в маркерах с nonce иetag.
Индекс (index.path, по умолчанию .index/fts.sqlite) пересобирается сервером; его можно удалить, он создастся заново.
Аудит ручных правок
Файлы в data/ можно править руками. Проверить, что всё соответствует правилам:
uv run okf-notebooks validate # все блокноты
uv run okf-notebooks validate --notebook demo
Агент проверяет заметку без записи через notebook_validate.