# Specification: Маркетплейс готовых ИИ-агентов (MVP)

> **Дата:** 2026-08-26 | **Тип:** Product Feature | **Владелец:** Владелец продукта | **Исполнитель:** Разработчик
> **Ревизия:** 2026-08-27 | **Основание:** `product/00-research-evidence-base.md` (27.08.2026, ~70 источников, ~60 карточек T1/T2) | **Версия:** 1.1

> **Ревизия 2026-08-27 — что изменилось и почему:**
> - In-Scope расширен Agent Kit-доставкой: `npx + doctor` вместо «ZIP + инструкция» — барьер установки №1 (Находка 3, H/T1; ZIP 2.1.243 SIGSEGV-провал).
> - Добавлены guardrails (hard-limits, dry-run) как обязательная часть каждого пакета с внешними действиями (Находка 5, H) — без них агенты удаляют письма, штрафы $80k, галлюцинации «тесты проходят».
> - Добавлено версионирование/пин моделей + канал обновлений — статика гниёт (Находка 9, H: Polza DeepSeek V4 поломка, Масленников 3000ч).
> - Dependencies: конкуренты и рыночная цена 1990₽ (Находка 2, H/T1: SkillPacks 1990₽, ClaudeSkills от 2900₽, ИИ-офис 1292 скила) — рынок НЕ Genesis.
> - Failure Conditions: модель-миграция и SIGSEGV-подобные поломки рантайма (ZIP 2.1.243 autoupdate без отката).
> - Связанные правки PRD: `product/13-deliver-prd.md` Rev 2026-08-27.

---

## Outcome Definition

**Результат:** Предприниматель видит агента → понимает результат → выбирает платформу → переходит в Telegram → покупает/получает бесплатно → получает архив → устанавливает → сообщает о результате.

**Бинарные критерии успеха:**
- Сайт доступен по домену и работает на телефоне и компьютере
- Каталог отображает≥5 агентов в трёх версиях
- Каждая кнопка передаёт в бота правильные пакет и платформу
- Бот фиксирует пользователя и заявку
- Администратор получает уведомление
- Администратор может подтвердить оплату
- Покупатель получает правильный архив
- Бесплатные архивы выдаются автоматически
- Все 15 сборок проверены на чистой среде

---

## Scope

### In-Scope

| # | Функция | Описание |
|---|---|---|
| 1 | Главная страница | Заголовок, подзаголовок, категории, популярные агенты, «Как это работает», FAQ,контакты |
| 2 | Каталог | Карточки агентов с фильтрами (задача, цена, платформа) |
| 3 | Карточка агента | Название, обложка, описание, возможности, ограничения, требования, цена, выбор платформы, кнопка покупки |
| 4 | Выбор платформы | Codex / Claude Code / OpenCode — на странице агента |
| 5 | Переход в Telegram | Кнопка «Купить» → Telegram-бот с параметрами |
| 6 | Telegram-бот: приём заявок | Бот получает пакет + платформу; показывает данные; фиксирует заявку |
| 7 | Telegram-бот: уведомление администратора | Администратор получает сообщение о новой заявке |
| 8 | Telegram-бот: подтверждение оплаты | Администратор подтверждает; бот отправляет архив |
| 9 | Telegram-бот: выдача бесплатных | Бесплатные архивы отправляются автоматически |
| 10 | Telegram-бот: поддержка | Приём сообщений о проблемах с привязкой к пакету |
| 11 | Страница «Как установить» | Инструкции для Codex, Claude Code, OpenCode |
| 12 | Служебные страницы | Оферта, политика, контакты |
| 13 | Аналитика | События сайта + события бота |
| 14 | SEO | title, description, OG, sitemap.xml, robots.txt |
| 15 | Адаптивность | Корректно на компьютере, планшете, телефоне |
| 16 | Installer (npx + doctor) | One-command установка: `npx @smarket/agent-kit install <package>` без `npm install -g` / `pip install` / `git clone` на первом шаге; `doctor` проверяет Node/зависимости, токены, права, сеть/VPN, даёт «зелёную галочку: агент готов»; веб-фолбэк (npx-first + веб-фолбэк) на случай SIGSEGV-подобного провала рантайма — см. Failure Conditions; метрика — time-to-first-successful-task, а не «скачал ZIP» (Находка 3) |
| 17 | Guardrails (hard-limits, dry-run) | Для каждого пакета с внешними действиями: hard-limits в коде транспорта (не в промпте), локальное хранение токенов, readback-проверки, подтверждение перед необратимыми действиями, `dry-run` по умолчанию для деструктивных/платных операций; карточка агента явно пишет «что НЕ делает» и «что меняет» (Находка 5) |
| 18 | Версионирование и обновления | Пин версий моделей/промптов в пакете, канал обновлений, инструкция миграции одной строкой, оповещение в Telegram-боте о доступном обновлении; защита от «гниения» статики (Находка 9) |

### Out-of-Scope

- Личный кабинет покупателя
- Личный кабинет автора
- Регистрация на сайте
- Встроенная оплата (эквайринг)
- Автоматическая загрузка агентов авторами
- Рейтинги, отзывы, подписки
- Английская версия
- Мобильное приложение
- Сложная рекомендательная система
- Автоматическая генерация SEO-статей
- Интеграция с CRM, почтой, календарём
- DRM / сложное лицензирование

---

## Acceptance Criteria

| # | Тип | Критерий | Статус |
|---|---|---|---|
| AC-1 | Behavioral | Сайт загружается за <3 секунды на мобильном и десктопе | Assumed |
| AC-2 | Behavioral | Каталог отображает≥5 агентов с корректными карточками | Assumed |
| AC-3 | Behavioral | Каждая карточка содержит: название, описание, ограничения, требования, цену, выбор платформы, кнопку покупки | Assumed |
| AC-4 | Behavioral | Фильтры по задаче и цене работают корректно | Assumed |
| AC-5 | Behavioral | Кнопка «Купить» передаёт в Telegram-бот: ID агента, ID платформы, цену | Assumed |
| AC-6 | Behavioral | Бот показывает название, версию, цену; фиксирует заявку | Assumed |
| AC-7 | Behavioral | Администратор получает уведомление о заявке | Assumed |
| AC-8 | Behavioral | После подтверждения оплаты бот отправляет ZIP-архив | Assumed |
| AC-9 | Behavioral | Бесплатные архивы отправляются автоматически | Assumed |
| AC-10 | Behavioral | Бот принимает сообщения о проблемах с привязкой к пакету | Assumed |
| AC-11 | Behavioral | Страница «Как установить» содержит инструкции для 3 платформ | Assumed |
| AC-12 | Negative | Платные архивы не доступны по публичным ссылкам | Assumed |
| AC-13 | Negative | Бот не отправляет архив до подтверждения оплаты | Assumed |
| AC-14 | Negative | Сайт корректно отображается на экранах≥320px | Assumed |
| AC-15 | Behavioral | `npx @smarket/agent-kit install` + `doctor` дают зелёную галочку на чистой среде; npx-first + веб-фолбэк покрывают SIGSEGV-провал; time-to-first-task <15 мин | New (Находка 3; ZIP 2.1.243) |
| AC-16 | Negative | Агент с внешними действиями не выполняет деструктивные/платные операции без hard-limits и подтверждения; `dry-run` по умолчанию; карточка раскрывает «что НЕ делает / что меняет» | New (Находка 5) |
| AC-17 | Behavioral | Kit версионирован (semver + pinned model), доступен канал обновлений и откат `rollback`; silent autoupdate запрещён | New (Находка 9) |

---

## Dependencies

| Зависимость | Владелец | Статус | Дедлайн | Примечание (Discovery 27.08.2026) |
|---|---|---|---|---|
| Готовые Agent Kit'ы (15 сборок: пакет + install.sh/doctor + pinned models) | Владелец продукта | TBD | До запуска | ZIP — лишь транспорт; ценность — Kit (Находка 3,9) |
| Тексты для карточек | Владелец продукта | TBD | До запуска | Формат «Кому подходит / Не подходит / Что подготовить / Что НЕ делает» (Находка 5,6) |
| Обложки агентов | Владелец продукта | TBD | До запуска | — |
| Telegram-аккаунт для бота | Владелец продукта | TBD | До начала разработки бота | — |
| Домен и хостинг | Владелец продукта | TBD | До запуска | — |
| Юридические тексты (оферта, политика) | Владелец продукта | TBD | До публичного запуска | — |
| Конкурентный мониторинг и ценовой бенчмарк | Владелец продукта / Аналитика | Done (T1) | Обновлять ежеквартально | **SkillPacks.ru 1990₽ разово** (WB/Ozon, SMM, Копирайтер; доставка ZIP+PDF через бота), **ClaudeSkills.ru от 2900₽** (50+ скиллов), **ИИ-офис 1292 скила** (часть бесплатно, резидентские по подписке), **PromptBase $3.99–6.99/промпт** — рынок НЕ Genesis/Blue Ocean; цена 1990₽ рыночная, дифференциация в качестве/адаптации/guardrails/обновлениях (Находка 2,4) |
| Инфраструктура доставки/обновлений (S3/VPS + версионирование) | Разработчик | TBD | До запуска | Пин моделей, канал обновлений — защита от гниения (Находка 9) |
| npx-реестр + веб-фолбэк доставки | Разработчик | TBD | До запуска | ZIP 2.1.243 SIGSEGV-провал — npx-first обязателен |

---

## Failure Conditions

| Условие | Последствие | Митигация |
|---|---|---|
| Архив не отправляется | Пользователь не получает продукт | Retry + уведомление администратору |
| Бот недоступен | Нет процесса покупки | Мониторинг; auto-restart |
| Ошибка при установке | Пользователь бросает | `doctor` с явными кодами ошибок + ссылка на поддержку в боте («пришли скриншот — подскажем»); метрика time-to-first-task |
| Оплата не подтверждена | Пользователь не получает архив | SLA: подтверждение в течение 24 часов |
| Миграция модели ломает сценарии | Агент вырос в счёте / встал, бизнес-процесс остановлен | Пин версий моделей в Kit'е, инструкция миграции одной строкой, канал обновлений, тест-регресс на 15 сборках перед публикацией (Находка 9: Polza DeepSeek V4, Масленников 3000ч — экосистема быстрее человека) |
| SIGSEGV-подобная поломка рантайма / autoupdate без отката (кейс ZIP 2.1.243) | Установка/обновление роняет среду, агент не стартует, массовый отток | npx-first + веб-фолбэк доставки, версионированный откат, `doctor --check` до/после установки, запрет silent autoupdate без подтверждения; мониторинг крашей по `install_result` |
| Guardrail обойдён (промпт вместо кода транспорта) | Массовое удаление писем, штрафы до $80k, платные вызовы без лимита | Hard-limits в коде транспорта, `dry-run` по умолчанию, readback + human-in-the-loop перед необратимыми действиями, локальное хранение токенов (Находка 5: Волков «запреты в коде транспорта») |

---

## Assumption Registry

| # | Допущение | Уверенность | Что опровергнет |
|---|---|---|---|
| 1 | Telegram Bot API достаточен для выдачи архивов | L (T6) | Ограничение размера файла |
| 2 | SQLite/JSON достаточны для хранения данных бота | L (T6) | Объём данных >10K заявок |
| 3 | Яндекс.Метрика достаточна для аналитики | L (T6) | Нужен когортный анализ |
| 4 | Статический сайт подходит для каталога | L (T6) | Нужна динамическая фильтрация |
