Как всё связано
Какие записи инструменты связывают между собой (сообщения, люди, чаты, файлы, упоминания, заметки, задачи, факты, документы Drive, теги), кто создаёт каждую связь и что запустить, если связи не хватает.
Вы можете попросить агента показать всё о каком-то человеке или сообщения, на которых держится решение, потому что инструменты хранят связи между записями. Эта страница объясняет, какие связи бывают, кто создаёт каждую (инструмент, вы или ваш агент) и как по ним переходить. После неё вы сможете понять, почему связи нет и какая команда её добавит. Поиск и связи работают с тем, что уже лежит в локальном хранилище, поэтому сначала загрузите историю: Поиск.
Идея
tg, max, memo и drive хранят записи в одном локальном хранилище на вашем компьютере. Запись одного инструмента может быть связана с записью другого. Связь бывает двух видов:
- Часть самой записи. У сообщения есть чат и отправитель.
- Отдельная сохранённая связь между двумя записями. Заметка относится к человеку. Факт подтверждён сообщениями.
Адреса одного человека никогда не объединяются по догадке из имён. Каждая сохранённая связь помнит, кто её создал.
Ссылка на источник указывает на любую запись
В каждом результате есть ссылка на источник: короткое типизированное имя записи. Скопируйте её в следующую команду.
| Ссылка | На что указывает |
|---|---|
msg:telegram/1/77/42 | Одно сообщение: мессенджер, аккаунт, чат, сообщение |
chat:telegram/1/77 | Чат в одном аккаунте |
contact:telegram/501 | Контакт в одном мессенджере |
person:7 | Человек со всеми аккаунтами, которые вы к нему привязали |
organization:3, project:4, task:5 | Ваши организации, проекты и задачи |
note:12, document:3 | Заметка либо файл из папки заметок или из Drive |
memory:8, fact:9 | Запись памяти или факт |
Ссылка на сообщение включает аккаунт, поэтому то же число в другом аккаунте — другое сообщение. Поле со ссылкой в большинстве ответов называется ref. В некоторых ответах оно называется locator, а в одном списке Drive — reference. Копируйте значение, а не имя поля.
tg personal messages context "msg:telegram/1/77/42" --threadСообщения, чаты и люди
Сообщение принадлежит одному чату и имеет отправителя. Отправитель — это адрес: один аккаунт в одном мессенджере. Человек — это один или несколько таких адресов.
Объединять адреса в одного человека можете только вы. Одинакового имени или одного почтового домена для этого мало.
tg personal contacts link "Kai Sample" max:KaiПосле этого contacts timeline идёт за человеком через мессенджеры. Команда показывает, что он писал, где его упоминали, его чаты, почту, встречи и задачи, от новых к старым, только из хранилища.
tg personal contacts timeline "Kai Sample" --since-time 2026-10-01 --limit 20Инструмент также записывает, кто в чём участвовал (отправитель, получатель, участник, исполнитель, автор, упомянутый, связанный). Поэтому «всё о Kai» — это один запрос, а не перебор всех сообщений.
Ответы и разговоры
У каждого сообщения может быть указатель на более раннее сообщение, на которое оно отвечает. Каждый указатель знает, откуда он взялся:
- Мессенджер. Явный ответ. Он важнее всего остального.
- Правило инструмента. Сообщение, которое кого-то упоминает или продолжает того же отправителя.
- Ваш агент. Ответ, который он сохранил, прочитав чат. Для сохранения нужно разрешение профиля
conversations.links.
conversations build собирает эти указатели в разговоры одного чата. messages context с --thread идёт по цепочке от сообщения, а не показывает соседей по времени. Связь, устаревшая после правки или удаления, показывается, но по ней не идут. После пересборки у разговоров новые id, поэтому сохраняйте ссылку msg: на сообщение, а не id разговора. Как строится граф: Как устроен поиск.
Файлы, голосовые и картинки
- Файл принадлежит сообщению, письму или встрече. Его извлечённый текст остаётся при нём, поэтому
content:находит сообщение, которое принесло файл. - Расшифровка голосового принадлежит сообщению, поэтому
transcript:находит это сообщение. - Картинку находят через чат вокруг неё или по тому, что на ней. Оба способа описаны в разделе Что попадает в поиск.
Упоминания
Упоминание — это телефон, адрес почты, ссылка, ссылка на документ Google или имя знакомого вам человека, найденные по правилам в тексте сообщений, файлов и расшифровок. Каждое упоминание начинается как found. Затем вы подтверждаете его (linked) или отклоняете (dismissed).
mentions listпоказывает найденное.mentions show <id>показывает текст вокруг одного упоминания.mentions confirm <id> person:7говорит, кому принадлежит телефон или адрес, либо какого человека означает имя. Для телефона или адреса подходит иperson:, иorganization:. Сохранённому документу Google аргумент не нужен.mentions reject <id>отклоняет это значение везде и при следующих синхронизациях. Обычную ссылку нельзя подтвердить, только отклонить.mentions rebuildчитает сообщения, сохранённые до появления упоминаний.mentions rebuild person-nameзаново ищет имена, когда вы добавили или переименовали людей.
Обе команды записывают, кто решил. Если их запускает агент, решение сохраняется на имя агента; --as-owner сохраняет его как ваше.
Поиск находит упоминания, как бы они ни были написаны: phone:, email:, url: и domain: смотрят на значение, а mentions:"person:7" находит сообщения, где упомянут подтверждённый человек, организация или документ. Эти команды есть в последних релизах tg и max; проверьте свои через mentions --help. Подробнее: Что попадает в поиск.
Заметки, задачи, факты и память
memo хранит записи, которые вы или ваш агент пишете обо всём перечисленном.
- Заметка относится к человеку, чату, задаче или документу. Ссылка
[[Kai Sample]]в заметке становится связью с этим человеком, как только в хранилище есть кто-то с таким именем или username. Имя в обычном тексте связью не является. - Задача может возникнуть из сообщения. Задача-вопрос связана с сообщением, которое на неё ответило.
- Факт (утверждение, вопрос, решение или обещание) хранит связи с доказательствами: сообщениями, заметками или документами, на которых он держится. Новое решение может заменить прежнее. Факт, который добавил агент, ждёт как предложенный, пока вы его не примете.
- Запись памяти — вывод с доказательствами и статусом проверки. Изменение источника может сделать её устаревшей.
Теги
Тег ставится на любую запись: сообщение, чат, человека, документ, заметку, задачу. tag:work находит сообщение с этим тегом, сообщение в чате с этим тегом и сообщение от человека с этим тегом. Тег на папке Drive действует на каждый документ внутри.
tg personal tags add work --chat "Book club"Документы Drive
drive импортирует документы в то же хранилище. У документа могут быть теги, заметки, факты и записи памяти, а также связь с человеком (drive relationships, drive tags). drive documents list --person person:7 показывает документы, связанные с этим человеком.
Кто создаёт связь
| Связь | Кто создаёт |
|---|---|
| Сообщение в своём чате, с отправителем | Инструмент, когда сохраняет сообщение |
| Ответ | Мессенджер |
| Предполагаемый ответ (упоминание, тот же отправитель) | Правило инструмента |
| Выбранный ответ | Ваш агент, с conversations.links |
| Телефон, почта, ссылка, документ или имя в тексте | Правило инструмента, со статусом found |
| Упоминание подтверждено или отклонено | Вы или ваш агент, с записью имени |
| Два адреса — один человек | Вы, через contacts link |
| Тег | Вы, через tags add |
| Заметка, задача или факт о записи | Вы или ваш агент через memo |
| Факт от агента | Ваш агент, как предложенный; вы его принимаете |
Каждая сохранённая связь помнит источник: file (написана в файле заметки), owner (добавили вы), suggested (предложена, ещё не подтверждена) или message (написана в сохранённом сообщении).
Как использовать связи в вопросе
Четыре запроса, на которые агент может ответить благодаря связям. Подставьте свои имена.
Используй tg CLI. Найди сообщение, где мы договорились о дате доставки, и покажи сообщения вокруг него как один разговор.Используй tg CLI. Кому принадлежит телефон +1 555 010 0100? Покажи, где он встречается, и предложи человека.Используй tg CLI. Покажи всё о Kai Sample за последний месяц во всех мессенджерах, которые я к нему привязал.Используй memo. Какая задача возникла из сообщения про счёт и какое сообщение на неё ответило?Если связи не хватает
| Симптом | Вероятная причина | Что сделать |
|---|---|---|
| В хронологии человека виден один мессенджер | Адреса не объединены | contacts link, затем повторите запрос |
--thread показывает только соседей по времени | Для чата не собраны разговоры | conversations build --chat "Book club" |
| Телефон или почта в старом сообщении не находятся | Сообщение сохранено до появления упоминаний | mentions rebuild |
| Имя нового контакта не находится | Упоминания собрали до того, как появился человек | mentions rebuild person-name |
| Слова внутри файла не находятся | Текст файла не извлечён | attachments extract |
| В чате нет сообщений вообще | История не скачана | messages sync |
Дальше: Ищите эффективно показывает, как выбрать команду и сузить поиск. Столбцы хранилища, на которых держатся эти связи, описаны в модели данных.
Что попадает в поиск
Какие виды содержимого инструменты делают доступными для поиска (текст, файлы, веб-страницы, голосовые, картинки), что нужно каждому и что не покидает ваш компьютер.
Ищите эффективно
Как выбрать команду поиска, сузить запрос до поиска, листать результаты и держать вывод коротким: таблица частых фильтров и ошибки, из-за которых поиск впустую.