lookatshowшкола ИИ-агентовБесплатная вводная ↗Начать ↗

Практикум / Маркетинг · агентские инструменты

Как сравнить цены, сроки и состав офферов конкурентов с ИИ

Цена выросла, а состав пакета изменился. Повторим локальное сравнение по двум учебным снимкам и отделим расчёт от оценки предложения.

Опубликовано 10 минут чтенияJSON + команды + промпт

Учебные данные.
Настоящий локальный результат.

Скачать модуль и повторить ↓

Взять промпт для агента ↓

Что получите

Сравнение двух сохранённых предложений: какие суммы, сроки и элементы пакета изменились. Повторим учебный пример бесплатным модулем competitor-offer-radar, проверим расчёт и подготовим вопросы для решения. На выходе — JSON с исходными значениями и причинами, по которым некоторые условия нельзя сравнивать.

Вчера пакет конкурента стоил 10 000 ₽, сегодня — 12 500 ₽. Кажется, собственный прайс тоже пора менять. Но что вошло в новую сумму? Остался ли прежний объём работы? Если смотреть только на цену, можно принять решение по двум разным услугам.

В этом практикуме сравним условия одного вымышленного предложения в две даты. Модуль считает изменения локально. ИИ-агент может помочь подготовить файлы и объяснить отчёт, если умеет читать папку и выполнять команды. Показанный результат действительно получен запуском Python; он не является ответом Codex или Claude Code. Код модуля разработан с помощью ИИ.

1. Посмотрите, что именно изменилось

В релизе есть два учебных файла: examples/before.json и examples/after.json. Даты наблюдений — 1 и 8 октября 2026 года. Одинаковый ID strategy-session связывает записи об одной стратегической сессии. Название само по себе не доказывает, что перед нами один продукт.

Учебный пример. Все данные вымышлены.
Условие1 октября8 октябряИзменение
Заявленная сумма за пакет10 000 ₽12 500 ₽+2 500 ₽; +25%
Срок4 рабочих дня6 рабочих дней+2 дня; +50%
Интервью2 встречи1 встречаНа одну меньше
Отчёт1 документ1 документКоличество прежнее

Валюта, единица оплаты, правило включения налогов и минимальный заказ совпадают. Разницу заявленных сумм посчитать можно. Но интервью теперь одно: состав изменился. Поэтому программа выдаёт scope_changed_warning: true и причину components_changed. Рост на 25% нельзя назвать чистым подорожанием одинакового объёма услуг.

Учебный локальный просмотр настоящего CLI-результата: сумма 10 000 и 12 500 рублей, срок четыре и шесть рабочих дней, интервью два и одно; предупреждение об изменённом составе.
Настоящий снимок отдельной страницы для просмотра сохранённого CLI-вывода. Это иллюстрация учебного результата, а не встроенный веб-интерфейс модуля. Нажмите, чтобы открыть крупнее.

Можно скачать первый снимок, второй снимок и полный фактический результат. URL на example.test обозначают вымышленный источник. Модуль их не посещает.

2. Запустите готовый пример

Уточнение от 13 октября 2026: основная ссылка теперь ведёт на закреплённые исходники с исправлением вывода кириллицы. Это не новый релиз. Первоначальный v0.1.0 сохранён как история. Инструкция установки через агента.

Скачайте файл Проверенные исходники ZIP и распакуйте его. Откройте терминал в появившейся папке competitor-offer-radar-7206178f1f6c7484c6f4463c62fe48d497b398d6. Нужен уже установленный Python 3.9 или новее. Сторонних библиотек и аккаунта для расчёта не требуется.

Сначала проверьте среду и оба файла. Эти команды ничего не меняют в исходных снимках. Все команды можно скачать в TXT:

python3 -B competitor_offer_radar.py doctor
python3 -B competitor_offer_radar.py validate examples/before.json
python3 -B competitor_offer_radar.py validate examples/after.json

В нашем прогоне doctor показал версию 0.1.0, режим offline, network: false и telemetry: false. Обе проверки вернули ok: true, по два предложения и synthetic: true. Если проверка завершилась ошибкой, сначала исправьте её по тексту ответа.

python3 -B competitor_offer_radar.py compare examples/before.json examples/after.json

Найдите в JSON строку strategy-session. Блок price содержит исходные суммы, absolute_change: "2500" и percent_change: "25". В delivery будут "2" и "50", а в components.changed — интервью до и после. Числа в выводе записаны строками; отсутствие значения сохраняется как null.

Первый запуск уже даёт полный расчёт. Для повторной работы можно дополнительно установить утилиту в отдельную новую папку:

python3 -B install.py --prefix ../offer-radar-installed
../offer-radar-installed/bin/competitor-offer-radar doctor
../offer-radar-installed/bin/competitor-offer-radar onboard --state-dir ../offer-radar-state

Команды выше выполняются из исходной папки. Каталог установки и каталог состояния находятся снаружи неё. Установщик копирует файлы из списка MODULE.json, создаёт локальный запускатель и отказывается перезаписывать существующую папку. PATH, настройки агента и фоновые службы он не меняет. Явный onboard показывает авторское приветствие один раз на выбранный каталог состояния; в обычных отчётах рекламы нет. Для удаления достаточно убрать именно созданные вами папки установки и состояния.

Проверенный прогон выполнен на macOS с Python 3.9.6. Эти команды используют синтаксис macOS/Linux; отдельную проверку Linux и Windows мы здесь не заявляем. Способы запуска на Windows описаны в инструкции закреплённой версии исходников.

3. Проверьте арифметику и отказ на ошибке

Два расчёта можно проверить независимо, по входным числам:

Сумма: (12 500 − 10 000) / 10 000 × 100 = 25%
Срок:  (6 − 4) / 4 × 100 = 50%

Дополнительные два дня — это абсолютная разница; 50% — изменение относительно прежних четырёх дней. Поле pricing_scope: "declared_amount_only" ограничивает расчёт заявленной суммой. Ни формула, ни предупреждение о составе не оценивают качество результата.

Теперь проверьте понятную ошибку: передайте поздний снимок первым. Исходные файлы менять не нужно.

python3 -B competitor_offer_radar.py compare examples/after.json examples/before.json

Ожидается код выхода 2 и ответ invalid_input с сообщением after snapshot must be strictly later than before. Это корректный отказ: второе наблюдение должно быть позже первого. Частичного сравнения при такой ошибке не будет.

python3 -B -m unittest discover -s tests -v

Первоначальный ZIP был проверен 10 октября. 13 октября редакция повторила doctor, обе проверки validate, compare и 56 тестов из закреплённого исправленного архива исходников; все завершились успешно на macOS с Python 3.12.12. Самостоятельная проверка других ОС в этом обновлении не выполнялась. Проверка с обратным порядком файлов также дала ожидаемый отказ. Процессы выполнялись с запрещённым сетевым доступом. Они проверяют поведение программы, а не достоверность присланного прайса. Для настоящих данных всё равно потребуется сверка с источниками.

4. Дайте агенту точное задание

Этот запрос можно передать Codex, Claude Code или другому агенту с доступом к локальным файлам и запуску Python. Это инструкция для вашего повторения, а не запись уже состоявшегося ответа модели. Скачать промпт в TXT.

Прочитай README.ru.md и AGENTS.md в распакованном
competitor-offer-radar v0.1.0. Используй только учебные examples.
Ничего не скачивай и не подключай к аккаунтам.

Из папки пакета выполни doctor, validate для before.json
и after.json, затем compare в правильном порядке.
Запусти unittest discover -s tests -v.
Покажи команды, коды выхода и фактический результат.
Если запуск недоступен, назови ошибку; не придумывай вывод.

Для strategy-session отдельно проверь по исходным числам
разницу сумм, сроков и количества интервью.
Объясни pricing_scope и scope_changed_warning.
Проверь отказ при обратном порядке снимков.

Составь три вопроса для проверки предложения.
Не называй оффер хуже, услугу равнозначной или продукт закрытым.
Не дописывай неизвестные условия. Не публикуй файлы.

В этом задании достаточно запуска из папки: установка не обязательна. Если выберете установку, используйте отдельные команды выше и свободный каталог. Companion skill в пакете — инструкция агенту; наличие файла не означает автоматическую настройку конкретного клиента.

5. Подготовьте свои наблюдения

Начните с одного предложения, для которого у вас есть разрешённые сохранённые условия в две даты. Не восстанавливайте старую цену по памяти. Если прошлое наблюдение не сохранилось, запишите нынешнее и дождитесь следующего. Даты в файлах — время наблюдения, которое указываете вы; программа его не подтверждает.

  • Сохраните идентичность. Один id означает один продукт в обе даты. Переименованный пакет нужно сначала сопоставить вручную; разные ID автоматически по цене не сравниваются.
  • Разделите точное и неизвестное. price_basis: "exact" — точная сумма, "from" — цена «от». Две цены «от» не дают точного процента и получат not_comparable. Неизвестное оставляйте null, не нулём.
  • Запишите условия цены. Валюта, единица оплаты, включение налогов и минимальный заказ должны быть известны и совпадать. tax описывает налоги в сумме, а не налоговый режим компании. min_order: "1" означает минимум одну указанную единицу, например один пакет.
  • Укажите единицы срока и состава. Рабочие дни не равны календарным. components: null означает неизвестный состав; [] — явно пустой список перечисленных компонентов.

Для реальных наблюдений укажите synthetic: false в обоих файлах, фактические даты и разрешённые URL источников. Не смешивайте их с учебными снимками. Суммы записывайте как "12500", без пробелов и символа валюты. Сверьте остальные поля с полной схемой в README и выполните validate для каждого файла.

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

6. Превратите отчёт в вопросы к предложению

В учебном случае полезны три вопроса: что теперь заменяет второе интервью, какой результат получает заказчик и чем объясняется новый срок. Ответов в файлах нет. Нельзя придумать их за конкурента или объявить предложение слабее только потому, что сумма выросла.

Отсутствующий во втором файле starter означает лишь отсутствие ID в этом снимке. Появившийся audit — наличие новой записи. Закрытие и запуск продукта этим не доказаны. Скидки, отсрочка оплаты, регион, гарантии и договорные условия за пределами схемы тоже проверяются отдельно.

Такой отчёт помогает подготовить обсуждение своего предложения: какие условия сравнимы, где не хватает фактов и какой вопрос задать следующим. Если оффер один и условия простые, ручной таблицы может быть достаточно. Модуль полезен, когда хочется повторять одну проверку и сохранять исходные значения вместе с результатом.

Частые вопросы

Можно дать две ссылки вместо файлов?

Нет. Версия 0.1.0 читает два локальных JSON-снимка. Она не посещает сайты, не собирает прайсы и не создаёт расписание наблюдений. URL хранится как указание на источник.

Обязательно покупать подписку или ядро Lookatshow?

Нет. Модуль доступен по MIT, работает отдельно и не требует подписки, передачи контактов или покупки ядра. В архиве есть код, тесты и учебные данные.

Где здесь ИИ?

Агенту можно поручить подготовку структуры, запуск команд и разбор ограничений. Расчёт выполняет проверяемая Python-утилита. В этой статье показан её реальный локальный вывод; отдельный разговор с внешней моделью не выдаётся за выполненное демо.

Следующий шаг

Подготовил Дмитрий Лукашов. competitor-offer-radar — открытый модуль Lookatshow, единой системы управления маркетингом для ИИ-агентов. Он доступен в каталоге самостоятельных инструментов; автоматическая связка модулей в этом релизе не поставляется.

Для соседних задач есть проверка площадок РСЯ по CSV и сверка рекламных расходов с оплатами. Здесь следующий практический шаг — сохранить один разрешённый оффер в две даты и повторить сравнение.

Хотите освоить такой процесс на своей задаче?

Посмотрите формат личного обучения работе с ИИ. При обращении опишите, какие предложения сравниваете и какие исходные материалы уже есть. Это поможет обсудить подходящий сценарий занятия; сам модуль и учебный пример остаются бесплатными.

Источники и проверка

Материал подготовлен 10 октября 2026 года по публичному релизу v0.1.0, инструкции закреплённых исходников и двум учебным снимкам. Контракт и команды сверены с опубликованным пакетом. Показанные суммы относятся к вымышленному примеру; рост спроса, экономия или клиентский результат не измерялись.

Следующий шаг — ваша задача

Из учебного примера —
в работу компании.

Хотите повторить этот сценарий на материалах своей компании? На личных консультациях по ИИ разберём вашу задачу и уровень, выберем инструменты и научимся проверять результат. Для обучения по общей программе есть групповые и командные форматы.

Вводная — бесплатно, 25 минут. Личное занятие — 10 000 ₽ за 90 минут, если решите продолжить. Разработка и подписки сервисов обсуждаются отдельно.

Начать можно с нуля

Найдём первый шаг для вашего бизнеса

Бесплатная вводная на 25 минут: выберем одну задачу и способ проверить результат.

Обсудим вашу задачу

Дмитрий уточнит время бесплатной вводной. За 25 минут выберете задачу и первый проверяемый шаг.

Публичное имя пользователя с @, не ссылка и не код входа.

Обучение и разработка — разные услуги. Объём, сроки и стоимость разработки согласуем отдельно.

Рассказать о задаче — необязательно

Без паролей, данных клиентов и конфиденциальных сведений.

Без подписки на рекламную рассылку.

Продолжение — по желанию: 10 000 ₽ за занятие 90 минут.

Или напишите Дмитрию в Telegram.