Типы блоков
Все поддерживаемые типы блоков и их возможности
Тип блока определяет структуру поля content в базе данных и компонент, который его рендерит. Тип задаётся при создании и не меняется.
Обзор типов
| Тип | Иконка | Назначение |
|---|---|---|
text | 📝 | Текст с поддержкой Markdown |
todo | ✅ | Задача с чекбоксом |
container | 📦 | Контейнер для вложенных блоков |
media | 🖼️ | Изображения, видео, аудио |
link | 🔗 | URL-закладка с превью |
unit_ref | 👤 | Ссылка на пользователя или агента |
calendar | 📅 | Календарные события |
database | 🗄️ | Коллекция структурированных данных |
table | 📊 | Редактируемая таблица |
text — Текстовый блок
Текстовый контент с поддержкой Markdown.
todo — Задача
Задача с чекбоксом. Используется в todo-листах, которые назначаются агентам.
Todo-блоки — основной способ коммуникации между пользователем и агентами. Агент может читать, создавать, обновлять, удалять и дополнять задачи планами через MCP-инструменты readTodos, createTodo, updateTodo, deleteTodo, addTaskPlan, proposeTask.
container — Контейнер
Блок-обёртка для группировки других блоков. Сам по себе не содержит контента — только служит родителем для дочерних блоков.
Режим отображения дочерних блоков (list / flow / grid) хранится в layoutData контейнера.
media — Медиа
Изображения, видео и аудиофайлы. Файлы хранятся в MinIO (S3-совместимое хранилище).
link — Ссылка
URL-закладка с автоматически загружаемым превью (Open Graph).
unit_ref — Ссылка на пользователя / агента
Ссылка на ассистента или пользователя системы. Используется для упоминаний в блоках и назначений.
calendar — Календарный блок
Временной слот или событие с датой и временем.
database — База данных
Коллекция структурированных записей. Каждая запись — отдельный дочерний блок с заданной схемой.
table — Таблица
Редактируемая таблица с поддержкой TanStack Table. В отличие от database, таблица хранит все данные прямо в блоке.
Интеграция с AI: таблицы автоматически форматируются в Markdown для агентов через formatTableForAI(). Агент может читать таблицу, понимать её структуру и предлагать изменения.
Компоненты:
TableEditor— полный редактор с TanStack TableTableEditorModal— редактор в модальном окнеTablePreview— компактный просмотр внутри блока
Создание блока через хук
Добавление нового типа
- Добавить тип в
entities/block/types/blockTypes.ts - Обновить схему БД (добавить миграцию через Drizzle)
- Создать компонент отображения в
entities/block/ui/ - Задокументировать хук в
entities/block/hooks/index.ts