Tana Outliner: заметки, supertags и ИИ — основные части рабочего процесса в редакторе структурированных заметок. Узлы связываются ссылками, supertags превращают узел в объект с полями, а встроенный ИИ работает с заметкой как с контекстом. Ниже — законченный маршрут: учебная карточка книги в Today, свой supertag с тремя полями, запрос к AI Chat и ручная сверка ответа.
Что открыто перед началом
Этот маршрут относится к редактору Tana Outliner; ориентируйтесь на официальный раздел outliner.tana.inc. В боковой панели документированы Today, Supertags и Pinned; Workspaces появляется при работе с несколькими пространствами. Home, Schema, Library, Settings и Trash входят в служебные узлы пространства. Daily notes созданы по умолчанию в личном пространстве, а в новых их можно подключить отдельно.
Навигация в Tana Outliner строится вокруг узлов и ссылок. Для перехода внутрь узла кликните по его маркеру; для возврата используйте кнопку Back. Глобальный поиск вызывается по Cmd + S (Ctrl + S в Windows), командная строка — по Cmd + K (Ctrl + K). Панели открываются справа от исходного окна, ширина меняется перетаскиванием разделительной линии. Вкладки поддерживаются в настольном приложении.
Перед упражнением выберите личное рабочее пространство, где Daily notes созданы по умолчанию, и откройте Today. Командную строку откройте через Cmd + K на Mac или Ctrl + K на Windows. Если пункты не видны, проверьте боковую панель и настройки Daily notes в выбранном пространстве.
| Что проверяем | Где смотрим | Признак Tana Outliner |
|---|---|---|
| Продукт | Заголовок окна и справка | Название Tana Outliner |
| Навигация | Боковая панель | Пункты Today, Supertags, Pinned |
| Команды | Cmd + K / Ctrl + K | Открывается командная строка |
| Узлы workspace | Дерево от Home | Home, Daily notes, Schema, Library |
Отдельно стоит убедиться, что открыто нужное рабочее пространство. Справка проекта отмечает, что каждое пространство хранит свои настройки, свою корзину и свой набор узлов. Если вы работаете в нескольких пространствах, переключение меняет видимую структуру целиком.
Учебный node в Today
Today в Tana Outliner — это узел текущего дня. Справка проекта описывает его как место для планов, брайндампов и напоминаний, привязанных к дате. Для учебного маршрута это удобная точка входа: узел создаётся быстро и не требует заранее продуманной структуры.
Создайте в Today узел с названием «Training book: The Glass Orchard». Под ним разместите дочерний текст:
Author: Morgan Vale. Reading status: In progress. The publication year is not given. This is a fictional book used for training.
Это условный учебный вход. Книга вымышленная, автор и статус заданы заранее, год публикации в тексте отсутствует намеренно. Такой набор проверяет, умеет ли модель отличать известное от неизвестного.
Почему узел создаётся именно в Today. Справка проекта разделяет два режима заметок: ежедневный блокнот и вики-разделы на Home. Ежедневный блокнот подходит для быстрых записей, которые не обязаны пережить день. Для материала, который должен остаться, справка проекта советует применять supertags — это первый шаг к построению графа знаний. Учебная карточка как раз относится ко второй категории: она должна сохраниться и получить структуру.
Дочерний текст важен целиком. Когда позже вы дадите ИИ ссылку на узел, в контекст попадёт дочернее дерево. Справка проекта по AI Chat указывает, что добавленный узел приносит с собой своё поддерево. Разместите фразу об отсутствии года внутри исходного узла, чтобы она входила в его дочернее дерево.
Перед следующим шагом проверьте, что узел виден в Today и весь исходный текст вложен под ним как дочерний. Уровень вложенности определяет, что именно попадёт в контекст.
Supertag с тремя полями
Supertag превращает узел в объект. По документации проекта supertag обозначает тип объекта и позволяет задать для него структуру. Проверка простая — мысленно подставьте «является»: «Morgan Vale является Person», «Glass Orchard является Book». Если фраза звучит осмысленно, supertag выбран верно.
Создайте свой supertag с именем #training-book. В документации проекта описаны два способа: набрать # в любом узле и ввести новое имя, либо выполнить в командной строке Convert to supertag, что превратит существующий узел в определение supertag вместе с дочерними полями. Второй способ удобен, когда структура уже набросана.
Добавьте в шаблон три поля: Author, Reading status, Publication year. Документация проекта описывает поля как атрибуты объекта: у задачи бывают Status и Deadline, у клиента — Company name и Email. Поля добавляются прямо в конфигурации через символ > в начале нового узла либо на лету под размеченным узлом с последующим Add to template.
| Поле | Тип значения в примере | Источник значения |
|---|---|---|
| Author | Текст | «Author: Morgan Vale» |
| Reading status | Текст | «Reading status: In progress» |
| Publication year | Число или пусто | В тексте отсутствует |
Примените #training-book к учебному узлу. В документации проекта указано, что при применении supertag узел заполняется полями и узлами из шаблона. Поля появятся пустыми — их мы заполним вручную после ответа ИИ.
Полезная деталь из документации: в конфигурации supertag видно, сколько раз тег применён. Если поле добавлено под размеченным узлом и не сохранено в шаблон, оно останется локальным. Для учебного маршрута все три поля должны быть в шаблоне, иначе на следующем узле их не будет.
AI Chat и ссылка на узел
AI Chat в Tana Outliner открывается по нажатию Space под заметкой. Справка проекта описывает это как чат с заметкой в роли контекста: можно спросить о сказанном на встрече, попросить переформатировать черновик в пост или в протокол.
Ключевое ограничение: чат не читает весь граф автоматически. Справка проекта по AI Chat перечисляет способы добавить контекст — ссылку через @, копирование текста, живой поиск. Изображения и файлы этот чат не обрабатывает. Дочернее дерево добавленного узла входит в контекст.
Порядок действий. Откройте AI Chat на пустом дочернем узле. Через @ добавьте именно узел «Training book: The Glass Orchard». Проверьте адресата ссылки в поле контекста: она должна указывать на учебный узел Training book.
Здесь легко ошибиться. Ссылка через @ приносит узел вместе с поддеревом, поэтому в контекст попадут и дочерние строки. Проверьте дочернее дерево учебного узла: в него должны входить только строки упражнения. Уберите из этого поддерева лишние записи до отправки запроса.
Отдельно про механизмы записи. В документации проекта описаны custom autofill, команды и триггеры — это настраиваемые функции supertag, которые запускаются по событиям. Одно сообщение в чате к ним не относится. Ответ чата остаётся текстом в диалоге, пока вы сами не перенесёте значения в поля.
Запрос на таблицу предложений
Полный запрос для учебного маршрута. Скопируйте его целиком:
Using only the referenced Training book node, propose values for Author, Reading status and Publication year. Return a table with field, value and source phrase. Use NOT STATED when absent. Do not search the web: the book is fictional. Do not change my nodes.
Разберём, что делает каждая часть. Первая фраза ограничивает источник: только указанный узел. Вторая задаёт форму ответа — таблица с тремя колонками. Третья вводит правило для отсутствующих данных: NOT STATED. Четвёртая запрещает поиск в сети, поскольку книга вымышленная. Пятая запрещает менять узлы.
Что менять под себя: имя узла в первой фразе, список полей, формулировку маркера для отсутствующих данных. Если ваши поля называются иначе, перечислите их своими именами — модель ориентируется на текст запроса.
Вариации той же задачи:
Using only the referenced node, list every field whose value is present in the text. Return field, value and the exact phrase you took it from. Skip fields with no supporting phrase.
Using only the referenced node, return a table with field, value, source phrase and confidence. Mark any value you inferred rather than read as INFERRED.
Using only the referenced node, propose values for [поле 1], [поле 2], [поле 3]. Return a table with field, value and source phrase. Use NOT STATED when absent.
Compare the referenced node against this list of fields: [список]. Return a table showing which fields have a value in the text and which do not.
Using only the referenced node, return the field table and then one sentence explaining which fields you could not fill and why.
Форма ответа важна. Таблица заставляет модель показать источник для каждого значения. Строка с источником — то, что вы будете сверять глазами. Без неё проверить предложение нечем.
Сверка с эталоном
Эталон для учебного входа выглядит так.
| Поле | Значение | Фраза-источник |
|---|---|---|
| Author | Morgan Vale | «Author: Morgan Vale» |
| Reading status | In progress | «Reading status: In progress» |
| Publication year | NOT STATED | «The publication year is not given» |
Сверяйте построчно. Для Author и Reading status фраза-источник должна совпадать с текстом узла. Для Publication year сохраните маркер отсутствия года; числового значения в исходнике нет.
Типичные расхождения. Модель подставляет текущий год вместо маркера. Модель придумывает ISBN, которого в тексте нет. Модель указывает источник, которого в узле не было, — например, ссылается на внешний каталог. Модель отвечает прозой вместо таблицы. Каждое из этих расхождений означает, что предложение отклоняется целиком или частично.
Если в ответе появились сведения, которых нет в учебном узле, отклоните неподтверждённые предложения и проверьте @ссылку, дочернее дерево и другие явно добавленные источники. Причину ошибки устанавливайте отдельно; повторный ответ снова сверьте с текстом узла.
Отдельно проверьте, не изменились ли узлы после ответа. Запрос содержит запрет на изменение, но убедиться стоит: поля должны остаться пустыми до вашего ручного переноса.
Ручной перенос и отклонение
Переносите значения вручную. Откройте поля узла и впишите Author и Reading status. Поле Publication year оставьте пустым или отметьте как неизвестное. Придуманную дату вставлять нельзя: в исходном тексте года нет.
Не приписывайте чату автоматическое заполнение. В документации проекта custom autofill, команды и триггеры описаны как отдельные настраиваемые механизмы supertag. Одно сообщение в чате к ним не относится. Если позже вы настроите autofill, это будет другая функция с другим поведением.
Отрицательная проба. Запустите запрос ещё раз и посмотрите, появится ли в ответе текущий год или выдуманный ISBN. Такой ответ отклоняется. Причина в том, что модель дополнила отсутствующие данные правдоподобными. Для учебной карточки это ожидаемая ошибка, и её нужно уметь замечать.
Проверка дочернего контекста. Посмотрите, какие строки попали в область видимости. Если под учебным узлом лежат лишние записи, уберите их и повторите запрос. Чистый контекст даёт ответ, который проще сверить.
Итог маршрута: узел в Today, свой supertag с тремя полями, ссылка на узел в AI Chat, таблица предложений, построчная сверка, ручной перенос принятых значений и отклонение выдуманных. Этот порядок воспроизводится на любой похожей карточке — книга, контакт, проект.
Частые вопросы
Как понять, что открыт именно Tana Outliner?
Ориентируйтесь на официальный раздел outliner.tana.inc и редактор Tana Outliner. В боковой панели документированы Today, Supertags и Pinned; Workspaces появляется при работе с несколькими пространствами. Daily notes созданы по умолчанию в личном пространстве и подключаются отдельно в новых. Если пункт не виден, проверьте выбранное пространство и настройки ежедневных заметок.
Чем supertag отличается от обычного тега?
Supertag делает узел объектом, а обычный тег помечает тему. Документация проекта приводит проверку через «является»: «buy milk» является Task, «Marisha» является Person. Supertag применяется ко всему узлу и приносит с собой поля из шаблона. Обычный тег такой структуры не создаёт.
Почему AI Chat не заполнил поля сам?
Чат возвращает текст в диалоге. Документация проекта описывает custom autofill, команды и триггеры как отдельные механизмы supertag, которые настраиваются в конфигурации. Одно сообщение в чате к ним не относится. Значения переносятся в поля вручную.
Что делать, если модель придумала год публикации?
Отклонить это значение. В учебном тексте год отсутствует, поэтому правильный ответ — маркер NOT STATED. Придуманная дата означает, что модель дополнила данные правдоподобным значением. Поле года оставьте пустым или отметьте как неизвестное.
Почему в ответ попали данные из других заметок?
Проверьте все явно добавленные источники и дочернее дерево узла по @ссылке. В контекст этой ссылки входит дерево указанного узла. Уберите из него лишние дочерние строки и повторите запрос; каждое значение ответа затем сверьте с источником.
