Drafta 1.4: обмен знаниями в формате OKF и Ctrl-w в vim
Drafta 1.4 читает и пишет Open Knowledge Format, отдаёт его агентам через MCP, учит vim-режим переключаться между панелями по Ctrl-w и чинит двойные префиксы в быстром поиске.
Заметки в Drafta — это обычные Markdown-файлы, и это всегда было главным плюсом: библиотеку можно открыть в любом редакторе. В 1.4 мы пошли дальше и научили Drafta общему формату обмена знаниями, который понимают и люди, и ИИ-агенты. Заодно в vim-режиме появились переходы между панелями, а быстрый поиск перестал дублировать префиксы.
Что такое OKF
Open Knowledge Format (OKF) — открытый формат Google Cloud для обмена знаниями между людьми и агентами. Его версия 0.2 описывает набор правил на одну страницу:
- бандл — каталог с Markdown-файлами;
- каждая концепция (таблица, метрика, регламент, API) — один файл, путь файла служит её идентификатором;
- в начале файла YAML-блок, из обязательных полей только
type; рекомендованыtitle,description,resourceиtags; - файлы
index.mdв каталогах перечисляют содержимое,log.mdхранит историю изменений; - ссылки между концепциями — обычные Markdown-ссылки, а чужие ключи в YAML читатель обязан сохранять.
Никакой платформы и SDK для этого не нужно. Если файл можно открыть cat, его можно прочитать.
Экспорт и импорт в Drafta
В меню File появились два пункта: Export as OKF Bundle… и Import OKF Bundle….
Экспорт берёт блокнот или всю библиотеку и записывает бандл в папку или в .zip:
- блокноты становятся каталогами, а заметки — файлами-концепциями с
type,title,descriptionиtags; - в каждом каталоге есть
index.md, а в корне бандла он ещё и объявляет версиюokf_version: "0.2"; - вики-ссылки
[[Заметка]]превращаются в обычные ссылки на путь внутри бандла, вложения лежат вreferences/; - заметки из корзины в бандл не попадают;
- статус заметки (
active,onHold…) пишется в расширяющий ключdrafta_status, потому что полеstatusв OKF означает другое:draft,stableилиdeprecated.
Импорт принимает папку или .zip с бандлом, в том числе чужим, например примеры Google на данных GA4:
- каталоги становятся блокнотами, ссылки между концепциями превращаются обратно в вики-ссылки;
- ключи, которых Drafta не знает, например вложенные
generated,sourcesиverified, сохраняются в заметке дословно и возвращаются при следующем экспорте; - заметка, которая уже есть в библиотеке, пропускается и не перезаписывается, а итоговое окно перечисляет всё пропущенное с причинами;
- файлы без поля
typeпропускаются: по спецификации это не концепции.
OKF для агентов: MCP
Тот же формат доступен через MCP-сервер drafta-mcp, который ставится вместе с приложением и подключается к Claude Code и другим клиентам:
export_okfзаписывает бандл в указанную пустую папку, можно ограничиться одним блокнотом;import_okfчитает бандл из папки и создаёт заметки, пропуская те, что уже есть; заметки из корня бандла попадают во «Входящие»;read_noteс параметромformat: "okf"отдаёт заметку как OKF-концепцию, с типом, тегами и ссылками как путями.
Агент получает вашу библиотеку в виде, который описан открытой спецификацией, а не в формате приложения. Экспорт зависит от лицензии так же, как экспорт в приложении, а импорт не работает в режиме «только просмотр».
Vim: переходы между панелями
В Normal-режиме работает цепочка Ctrl-w h и Ctrl-w l, как переключение окон в vim:
Ctrl-w hпереводит фокус из редактора к списку заметок, ещё один раз влево — к сайдбару;Ctrl-w lдвигает фокус обратно вправо;- в панели
jиk(или стрелки) двигают выбор,Returnоткрывает: в списке заметок открывается заметка, а фокус возвращается в редактор, в сайдбаре фокус переходит к списку заметок; Escвозвращает фокус к редактору.
Клавиши читаются по физическому положению, поэтому на русской раскладке цепочка работает без переключения, как и остальной Normal-режим. Активная панель подсвечена рамкой. Переход включается только вместе с vim-режимом, а сочетания с ⌘ и ⌥ работают как раньше.
Пока есть ограничения: в сайдбаре j и k ходят по всем строкам, включая свёрнутые блокноты и теги, а входить в панели можно только когда открыта заметка.
Быстрый поиск без двойных префиксов
В быстром поиске по ⌘P префиксы режимов (> для команд, # для тегов, b для блокнотов, t для тегов) раньше оставались в строке, пока режим уже был включён. Из-за этого > появлялся дважды, а удаление лишнего символа выключало режим целиком. Теперь:
- префикс включает режим и пропадает из строки, а режим показан значком и пометкой;
- удаление текста режим не выключает, из него выходит
Backspaceна пустой строке; Tabпревращает одиночнуюbилиtв режим поиска по блокнотам или тегам.
Как обновиться
Drafta предложит обновление сама, а если нет, скачайте сборку с drafta.org. Приложение подписано сертификатом Apple Development, без нотаризации, поэтому при первом запуске его нужно разрешить в System Settings → Privacy & Security → Open Anyway.
Если вы работаете с агентами и храните знания в Drafta, попробуйте выгрузить блокнот в OKF и открыть бандл в другом инструменте. Если найдёте расхождение со спецификацией, напишите, мы исправим.