В чём фокус
Эту систему показал justyn.ai в вирусном посте (референс): сохранёнки автоматически перетекают в Notion, там раскладываются по базам, и уже из базы рождаются заготовки под посты, статьи и сценарии. Ты открываешь Notion и видишь не свалку, а конвейер: слева сырьё, справа готовые идеи.
Обычно под такое покупают сервис автоматизации и платят за него каждый месяц. Здесь всё то же самое собирает Claude Code (подойдёт и Codex): пишет скрипт, ставит зависимости, настраивает планировщик и сам прогоняет первый запуск. Твоя работа — завести доступы и вставить два промпта.
Как устроена система
Логика простая. Скрипт два раза в день — в 9:00 и 21:00 — забирает свежие сохранёнки из выбранных папок Instagram и кладёт их в первую базу Notion: подпись, тип (рилс, карусель, пост), ссылка, автор. Дальше по этой базе проходит второй шаг: из сырых сейвов генерируются обработанные контент-идеи с тегами во вторую базу.
Всего четыре шага сборки: доступ к сохранёнкам, интеграция Notion с двумя базами, промпт для Claude Code, который пишет и ставит на расписание скрипт-синхронизатор, и второй скрипт, превращающий сырьё в идеи. Разберём каждый — начиная с самого честного вопроса: а как вообще законно достать свои сохранёнки.
Шаг 1. Доступ к сохранёнкам: честно про ограничения
Сразу важная оговорка: у Instagram нет официального публичного API для чтения сохранёнок — Graph API для бизнес-аккаунтов сохранённые посты не отдаёт. Поэтому путей два, и выбирать стоит осознанно.
Безопасный путь: официальный экспорт. В Центре аккаунтов (accountscenter.instagram.com) есть раздел «Ваша информация и разрешения», пункт «Скачать информацию». Запрашиваешь выгрузку в формате JSON, отметив только «Сохранённое» — Instagram пришлёт архив с файлом saved_posts.json и ссылками на всё, что ты сохранил. Минус очевиден: выгрузка ручная и приходит с задержкой от часов до пары дней, автосинк на ней не построишь. Зато ноль риска для аккаунта. Этот путь идеален для первичной загрузки истории: разово перенёс всё старое, дальше работает автоматика.
Рабочий путь для автосинка: instagrapi. Это Python-библиотека, обёртка над приватным мобильным API Instagram (github.com/subzeroid/instagrapi). Она умеет читать твои папки сохранёнок: метод collections() возвращает список папок, collection_medias(collection_pk) отдаёт посты конкретной папки — включая caption, тип медиа и код для ссылки (документация).
Честно о рисках: приватный API нарушает условия использования Instagram, и аккаунт теоретически может поймать челлендж или временную блокировку. На практике риск сводят к минимуму три правила. Первое: логин по паролю выполняется один раз, дальше сессия сохраняется в файл (dump_settings / load_settings) и переиспользуется — для Instagram это выглядит как один и тот же телефон. Второе: частота обращений низкая — два прогона в день с чтением одной-двух папок далеки от подозрительной активности. Третье: не гоняй скрипт с чужих IP и не подключай к тому же аккаунту другие боты.
Шаг 2. Notion: интеграция, токен и две базы
Идём на developers.notion.com — там описан весь путь создания интеграции. На странице интеграций (notion.so/my-integrations) создаёшь внутреннюю интеграцию, называешь её, например, «IG Saves Sync», выбираешь рабочее пространство и на вкладке настроек копируешь секретный токен. Токен никому не показывать и в код не вшивать — он пойдёт в файл .env.
Дальше руками создаёшь в Notion две базы данных.
Первая — «Сейвы (сырьё)» — со свойствами: Название (title, первые слова caption), Caption (text), Тип (select: Reel, Карусель, Пост), Ссылка (url), Автор (text), Папка IG (select), Дата сейва (date), Статус (select: новый, разобран).
Вторая — «Контент-идеи» — со свойствами: Идея (title), Формат (select: пост, статья, сценарий рилса), Теги (multi-select), Ссылка на источник (url), Статус (select: черновик, в работе, опубликовано).
Шаг 3. Промпт для Claude Code
Открой терминал в пустой папке проекта, запусти claude и вставь промпт целиком:
Собери систему синка сохранёнок Instagram в Notion.
Дано: Python 3.11+, файл .env с переменными IG_USERNAME, IG_PASSWORD,
NOTION_TOKEN, DB_SAVES_ID, DB_IDEAS_ID. Библиотеки: instagrapi, notion-client,
python-dotenv (поставь сам).
Напиши скрипт sync.py, который:
1. Логинится в Instagram через instagrapi. Если есть session.json, грузит
сессию через load_settings, иначе логинится по паролю и сохраняет
сессию через dump_settings. Пароль после первого входа не используется.
2. Читает папки сохранёнок из списка IG_COLLECTIONS в .env (имена через
запятую; пустое значение = папка «Все посты»). Для каждой берёт
до 50 свежих медиа через collection_medias.
3. Для каждого медиа определяет тип (reel / карусель / пост по media_type
и product_type), собирает ссылку вида instagram.com/p/<code>/,
caption, username автора.
4. Дедупликация: перед записью проверяет через notion databases.query,
нет ли уже страницы с этой ссылкой в базе DB_SAVES_ID. Новые пишет
через pages.create со статусом «новый».
5. Логирует итог прогона в sync.log (сколько нашёл, сколько новых).
6. Обрабатывает ошибки сети и rate-limit паузами, не роняя весь прогон.
Затем настрой запуск дважды в день в 9:00 и 21:00:
- на Windows создай задачи через schtasks (две задачи или одна с двумя
триггерами), команда: путь к python + путь к sync.py;
- если система unix, предложи строку crontab: 0 9,21 * * *.
Прогони скрипт один раз вручную, покажи мне лог и проверь, что записи
появились в Notion.Claude Code сам поставит зависимости, напишет код, создаст задачи планировщика и сделает тестовый прогон. Твоя работа: заполнить .env реальными значениями и один раз подтвердить вход в Instagram, если прилетит код подтверждения.
Шаг 4. Из сырья в идеи
Когда база наполняется, добавляется второй скрипт. Промпт для Claude Code:
Напиши ideas.py: берёт из базы DB_SAVES_ID страницы со статусом «новый»,
для каждой формирует запрос к Claude API (модель haiku подойдёт):
по caption и типу поста предложи 2 идеи контента под мою нишу
(ниша: <ваша ниша>), каждая с форматом (пост / статья / сценарий рилса)
и 3-5 тегами. Ответ парси и создавай страницы в DB_IDEAS_ID, проставляя
ссылку на источник. Исходной записи ставь статус «разобран».
Добавь ideas.py вторым шагом в те же задачи планировщика после sync.py.Если не хочешь тратить API-ключ, есть вариант проще: раз в день открываешь Claude Code и говоришь «разбери новые сейвы в идеи» — он сам сходит в обе базы через тот же токен. Автоматики меньше, зато ноль дополнительных расходов.
Идеи копятся в Notion. А кто превратит их в посты и деньги?
Эта система закрывает вход конвейера: сырьё и идеи. Дальше идёт остальная цепочка — карусели и рилсы пачкой, воронки на кодовые слова, лид-магниты и платёжки. Всё тем же Claude Code, одним человеком. Эту цепочку собираем на практикуме, по шагам.
Что за практикум →Грабли, о которых лучше знать заранее
Четыре вещи, на которых система обычно спотыкается — и как пройти их сразу.
Зачем тебе это на самом деле
Сохранёнки — это твой личный, уже отфильтрованный тобой источник контент-идей. Ты годами отмечал, что цепляет именно тебя и твою нишу, — а потом ни разу туда не вернулся, потому что возвращаться в свалку из четырёхсот карточек физически неприятно. Система не добавляет тебе новой работы — она достаёт пользу из работы, которую ты уже сделал большим пальцем.
И это хороший первый проект на Claude Code для нетехнаря: две API, планировщик, логи — всё по-взрослому, но собирается двумя промптами за вечер. После него перестаёшь бояться слов «скрипт» и «интеграция»: понимаешь, что любую рутину, у которой есть вход и выход, можно так же поставить на рельсы.
Источники
Референс-система и документация инструментов из этого гайда:
Референс-система, с которой всё началось: instagram.com/p/DaQqNWnvEMs (justyn.ai).