# Octobrain 0.6.0: ваш ИИ наконец помнит, что прочитал

> Octobrain 0.6.0 добавляет полное чтение документов, regex match по индексированному контенту, потоковую выдачу запросов и удаляет инструмент auto_link. Что изменилось и как обновиться.

# Octobrain 0.6.0: ваш ИИ наконец помнит, что прочитал

Большинство инструментов памяти ИИ хранят то, что вы им скажете хранить. 0.6.0 меняет то, что Octobrain может _находить_.

Этот релиз про знания — не только воспоминания, накопленные из разговоров, но документы, страницы и файлы, на которые вы её направляете. Чтение, поиск, match. Полное извлечение контента. Regex-grep по всему индексированному. И более чистая MCP-поверхность без инструмента, который вам никогда не нужно было звать руками.

---

## Читай что угодно, извлекай всё

Главное добавление в 0.6.0 — команда `read`. Дайте Octobrain URL или локальный путь — и она вытащит полный текст без чанкинга, резюмирования или обрезки. Сырой контент, отдан как есть.

Поддерживается HTML, PDF, DOCX и plain text. Удалённые URL и локальные источники работают одинаково.

```bash
octobrain knowledge read https://docs.example.com/api-reference
octobrain knowledge read ./spec.pdf
```

Через MCP это инструмент `knowledge` с `command: "read"`. Fallback, когда семантического поиска недостаточно — когда нужен _весь_ документ, а не релевантный фрагмент.

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

---

## Regex match по индексированному контенту

Команда `match` — новая и полезна для разработческих процессов.

Прогоняет regex по всему в индексе знаний — или по конкретному источнику, если передан — и возвращает совпадающие строки с номерами строк и путями источников.

```bash
octobrain knowledge match "error_code|timeout"
octobrain knowledge match "fn\s+handle_" --source ./src/main.rs
```

Это grep, но по базе знаний вашего ИИ. Если индексирован кодбейз, набор документов или коллекция URL, можно искать по точному паттерну вместо семантического сходства. Два режима дополняют друг друга: `search` для «найди что-нибудь про аутентификацию», `match` для «найди каждую строку с `auth_token`».

MCP-инструмент `knowledge` поддерживает это как `command: "match"`. Паттерны валидируются до выполнения — плохой regex падает быстро с понятной ошибкой, не молча пустым результатом.

---

## Потоковая выдача результатов

Под капотом запросы знаний теперь стримят результаты из LanceDB вместо сбора всего в память сначала.

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

---

## auto_link убран (он работает, просто вы его не зовёте)

MCP-инструмент `auto_link` удалён. Это единственное breaking-изменение.

Авто-связывание — автоматическое соединение связанных воспоминаний по семантическому сходству — по-прежнему происходит. Оно запускается на каждом `memorize` и `update_memory`. Просто нельзя дёрнуть руками — причин не было.

Если в конфиге MCP-клиента или промптах агента есть вызовы `auto_link`, уберите. Всё остальное без изменений.

---

## Векторный индекс: больше нет ошибок размерности

Тонкий, но раздражающий баг: PQ-индекс LanceDB требует, чтобы число суб-векторов делило размерность эмбеддинга нацело. Когда не делило — выскакивала непрозрачная ошибка индексирования.

0.6.0 чинит автоматически — округляет вниз до ближайшего валидного делителя, потолок 96. Оптимизатор разбирается — ничего не настраиваете, просто работает.

---

## Источники знаний строже

Два маленьких, но важных изменения валидации:

**Пути директорий отклоняются.** Если передать директорию в `knowledge index` или `knowledge read`, Octobrain теперь вернёт ошибку вместо молчания. Только файлы.

**Source URI нормализуются.** Хвостовые слеши срезаются при индексировании, так что `https://example.com/docs/` и `https://example.com/docs` — один и тот же источник. Раньше создавали дубликаты.

---

## Как выглядит 0.6.0 на практике

Реальный сценарий агента с этим релизом:

1. Проиндексируйте документацию проекта: `octobrain knowledge search "rate limiting"` — найдёт релевантный фрагмент
2. Нужна полная спека? `octobrain knowledge read ./docs/api.md` — полный текст без обрезки
3. Ищете конкретный код ошибки по всем источникам? `octobrain knowledge match "ERR_4[0-9]{2}"` — каждая строка с источником и номером
4. Сохраните ключевую мысль: `octobrain memory memorize` — авто-связывает со связанными воспоминаниями
5. Агент подхватит на следующем `remember` — без ручного соединения

Слой знаний и слой памяти работают независимо, но дополняют друг друга. Знания — для внешних источников. Память — для накопленного контекста и решений. 0.6.0 делает сторону знаний существенно мощнее.

---

## Апгрейд

Если на 0.5.x:

- Уберите вызовы `auto_link` из MCP-клиент конфигов и промптов агента
- Всё остальное обратно совместимо

Формат конфига не менялся. Формат хранилища не менялся. MCP-инструмент `knowledge` получает два новых значения `command` (`read` и `match`) — существующие вызовы `search`, `store`, `delete` не задеты.

Исходники и бинарники: [github.com/muvon/octobrain](https://github.com/muvon/octobrain). Что-то не так — открывайте issue, мы их читаем.
