# COBRA Comics — канон выпуска Этот файл — самодостаточная инструкция. Дайте его человеку или ИИ вместе с фактурой (реальная переписка, кейс, идея) — и на выходе получится выпуск, неотличимый от остальных на **https://comics.ai-delivery.ru**. Файл содержит: мир и его правила, героев, структуру страницы, тон, стандарт сториборда, правила генерации артов и порядок сборки. Ничего додумывать не нужно — всё ниже. --- ## 0. Как этим пользоваться **Быстрый путь.** Скопируйте раздел «14. Бриф нового выпуска», заполните 8 полей, отдайте вместе с этим файлом. Дальше исполнитель идёт по разделам 3 → 5 → 9 → 11 → 12. **Инструкция для ИИ (вставьте дословно):** > Ты — сценарист и художник-постановщик COBRA Comics. Прочитай канон целиком и сделай новый > выпуск строго по нему: соблюдай продуктовый канон (раздел 2), псевдонимы (раздел 4), структуру > страницы (раздел 5), тон (раздел 6), правила артов (раздел 9). Не выдумывай новых сущностей > продукта — если чего-то не хватает, используй существующие из раздела 2 или спроси. > Сначала выдай текст выпуска по структуре, затем список артов с промптами, затем HTML. --- ## 1. Что это за проект Каталог сценариев использования ИИ-агентов COBRA, поданный как серия комиксов. Каждый выпуск — реальная рабочая ситуация, разыгранная как история с героями и эмоциями. **Три обещания серии:** 1. Сначала знакомим с персонажами, потом разворачиваем сцену. 2. Упор на то, **что чувствуют герои** — не на функции продукта. 3. В конце всегда «За кадром»: как это устроено технически. **Визуальный жанр:** классический американский супергеройский комикс в духе винтажного Человека-паука — жирный чёрный контур, штриховка, растровые точки, насыщенный цвет, драматичные ракурсы. --- ## 2. Продуктовый канон (сущности мира) Нельзя переименовывать, нельзя выдумывать новые без нужды. | Сущность | Что это | Образ в комиксе | |---|---|---| | **КОБРА** | сам сервис, штаб в браузере: папки, чаты, агенты, артефакты, доступы | хранительница штаба | | **AI Delivery** | концепция: агенты приходят туда, где человек уже работает | философия вселенной | | **ADA / Ада** | мобильное приложение | младшая сестра | | **Алина Коброва** | чат-бот в Telegram, MAX, WhatsApp — единое лицо | героиня серии | | **Оркестратор** | прокачанная G005: решает, какой агент отвечает прямо сейчас | дирижёр с палочкой | | **G005** | заготовка агента, из которой собирают любого | серебряная капсула | | **Терминалка** | Claude Code-сессии: руки, которые чинят и разворачивают | робот с CRT-экраном вместо лица | | **Хронос** | планировщик, кроны и напоминания | латунный будильник на ножках | | **Арти** | артефакты: живые страницы вместо выгрузок | хранитель артефактов | | **Гриф** | права и доступы | строгая сова с ключами | | **Рик Зорен** | робот-ведущий, медиазвезда | компактный гуманоид ~140 см | | **Конструктор** | место сборки агентов | мастерская | | **Айфрейм / Карманный ВебАпп / Доковый ВебАпп** | способы показать интерфейс внутри чата | дверь / карман / док | | **Стихии MCP** | Огонь создаёт · Ветер доставляет · Земля хранит · Молния пробуждает · Вода принимает форму · Эфир связывает | шесть стихий | | **Чешуйки** | AddOn-расширения: IFrame-интерфейс + MCP-руки | шестигранные чешуйки | **Пять столпов AI Delivery** (упоминать, когда речь о концепции): приход в мессенджер · Оркестратор · папка и MD-файлы · сейф доступов · Чешуйки. **Ключевая механика памяти:** папка — контейнер проекта, чат — живой MD-файл. У всего есть текстовое описание, файлы перелинкованы, агенты читают ту же сеть. **Серии агентов:** `K1–K5` для клиентов · `S1–S7` для отдела продаж · `T1–T10` для сотрудников · `P1–P4` промо «для избранных» · `EN` партнёрская версия. --- ## 3. Из чего состоит выпуск Один выпуск = одна ситуация = одна страница `NN-slug.html`. Обязательный минимум: 1. **Обложка** (вертикальная 3:4) + заголовок в стиле «Дело о …» либо «Как …». 2. **Лид** — 3–4 строки: что за компания, что за ситуация, в чём боль. 3. **Тизер** — 1–2 строки с интригой и стрелкой ↓. 4. **Действующие лица** — 3–5 карточек: арт, имя, роль, **обязательно «Чувствует:»**, ссылка на страницу героя. 5. **Сцена** — 4–6 «битов». Бит = арт слева + разбор справа (или наоборот, через класс `rev`). 6. **Полоса чата** (`chatstrip`) — минимум одна: реальная переписка, как её видит человек. 7. **Разбор** — «было → стало», «что почувствовал каждый» или интерактивный макет `app-frame`. 8. **За кадром** — 4 шага: как это устроено технически. 9. **Футер** со ссылками на связанные страницы. Каждый бит: `kicker` (Кадр N) → `h3` заголовок → 1–2 абзаца → блок `emo` с эмоцией/выводом. --- ## 4. Анонимизация — обязательное правило Реальные имена компаний и хендлы **никогда** не попадают на сайт. | Реальное | В комиксе | |---|---| | ResFood | **RestoFood** | | Holy Shop | **Halo Shop** | | BotMarketing | **RoboMarketing** | | @slobodskoj | @svobodskoj | | @lazychaser | @lazyracer | | @STanyaE | @Tanya_HS | Новую компанию называем похоже, но не так же. Имена сотрудников — имя + инициал (Мария А., Саша К.). --- ## 5. Герои: канон внешности Полные карты персонажей (оборот, позы, палитра): `/sheet-<имя>.html`. Краткий канон для генерации: - **Алина Коброва** — женщина ~28, тёмно-каштановые волосы в гладком низком хвосте, безупречная белая рубашка с **маленькой изумрудной коброй над нагрудным карманом**, тёмные брюки, вокруг дрейфуют голубые частицы. Спокойная, непробиваемая, тёплая улыбка. - **Терминалка** — компактный робот, вместо лица CRT-экран с зелёным курсором, серая толстовка, быстрые механические руки. Никогда не говорит. - **Хронос** — круглый латунный будильник-робот с двумя колокольчиками-ушами и короткими ножками. - **G005** — гладкая серебряная капсула размером с ланчбокс, две спящие голубые линзы. - **Оркестратор** — та же капсула, но крупнее, с золотой отделкой, тремя линзами, бабочкой и дирижёрской палочкой; в руке веер карточек агентов. - **Гриф** — филин с янтарными глазами, бейдж охраны и связка ключей в когте. - **Рик Зорен** — робот-ведущий ~140 см, харизматичный. **Люди-сотрудники** (Мария А., Саша К., Игорь Х., Артемий, Лев, Даша О., Никита З. и др.) — у каждого одна запоминающаяся деталь: синяя прядь, паучок-талисман, лупа на лбу, наушники. Деталь повторяется во всех кадрах без исключения. --- ## 6. Тон и язык **Да:** - Короткие живые фразы, разговорная интонация, лёгкий детективный юмор. - Эмоция героя названа прямо: «облегчение», «тихая паника», «подозрительная лёгкость». - Конкретика вместо общих слов: не «быстро», а «за 14 минут»; не «много», а «1 240 чеков». - Честная сложность: агент иногда **молчит**, эскалирует, признаёт границы. **Нет:** - Маркетингового пафоса («революционное решение», «мы меняем мир»). - Обещаний, которых продукт не даёт. - Реальных названий и хендлов (см. раздел 4). - Текста на картинках — модель его всё равно испортит. Фирменные звуковые вставки (`pow`): «Дзынь!», «Клик!», «Готово ×3!», «Щёлк!», «Кто?!». --- ## 7. Файлы и имена ``` site/NN-slug.html выпуск (01-restofood, 02-haloshop, 17-g005-group) site/entity-.html сущность мира site/person-.html человек site/agent-|staff-|sales- досье агентов серий K / T / S site/promo-.html серия P site/sheet-<имя>.html карта персонажа site/loc-* / prop-* локации и артефакты сцены site/storyboard-NN.html сториборд выпуска site/assets/art/*.jpg все изображения ``` Арты: `cover-NN` обложка · `pNN-XX-slug` кадры выпуска · `hero-<имя>` портрет · `sbN-*` / `sNcM-K` кадры сториборда · `ms-<имя>-turn|poses` карты персонажа. --- ## 8. Вёрстка: рабочие классы ``` .panel .tilt-l .tilt-r кадр с рамкой и наклоном .narr подпись-нарратив внутри кадра .bubble .bubble.thought реплика / мысль .pow .pow.y .pow.c звуковая вставка .section-title заголовок секции .heroes .hero-card карточки героев .name-plate + .cyan|.blue|.dark плашка с именем .hero-meta .role .feels .appears начинка карточки героя .beat .beat.rev .beat-art .beat-side бит сцены .kicker .emo подзаголовок и блок эмоции .chatstrip .ch-title .m .m.user .w полоса переписки .rack .comic-card сетка карточек-выпусков .app-frame .app-tabs .app-screen .row-item .chip .app-btn .toast интерактивный макет .flow .frow .fbox .farrow схема-карта .steps .step .sn «За кадром», 4 шага .sheet .sheet-grid3 .sh-cell .scale-tag .rhythm лист сториборда .promptbox .pb-copy копируемый промпт ``` Каждая страница подключает `assets/style.css?v=N`. **При любой правке CSS версию бампают во всех HTML и во всех билдерах** — иначе nginx отдаст старый файл (`expires 7d`). --- ## 9. Генерация артов Движок: `generate-art.mjs` → Gemini `gemini-2.5-flash-image` через SOCKS5-прокси. Скрипт пропускает уже существующие файлы; перегенерация — `FORCE=1`. PNG → JPEG: `sips -s format jpeg -s formatOptions 85`. **Обязательный стилевой префикс цветного арта:** ``` Classic American superhero comic book art in the spirit of vintage Spider-Man comics: bold black ink outlines, expressive cross-hatching, halftone Ben-Day dot shading, saturated colors, dramatic cinematic angles, dynamic action lines, high emotional intensity on faces. WORDLESS art: absolutely NO text, NO letters, NO logos, NO writing anywhere. Empty speech bubbles are NOT allowed either. ``` Правила: - Персонажа описываем **полной константой** из раздела 5 в каждом промпте, где он есть. - Обложка — вертикальная 3:4, сверху оставляем место под заголовок. - Кадры сцены — 16:9 «WIDE cinematic comic panel» или 4:3. - Эмоция кадра проговаривается в конце промпта: `Emotion: ...`. - Если модель отказывается («ответ без картинки») — смягчить формулировку и **переименовать id**. - Перерисовали под тем же именем — файл в кеше не обновится: давайте новое имя (`-n`, `2`). --- ## 10. Стандарт сториборда Полностью описан на `/film-language.html`. Кратко: **Лестница крупностей:** 1 Деталь · 2 Крупный · 3 1-й средний · 4 2-й средний · 5 Общий · 6 Дальний. **Правило склейки:** разница между соседними кадрами **минимум две ступени**. Через ступень — идеально; на три и больше — акцент (смена места, финал); соседние и одинаковые — запрещены. **Формат:** сцена = **15 секунд = 9 кадров** = лист 3×3, кадр 1,5–2,5 с. У каждого кадра: крупность, длительность, действие одной фразой, движение камеры. К сцене — один промпт на 15 секунд с покадровым таймкодом и звуком. **Чек-лист сцены:** сумма ровно 15,0 с · нет соседних и одинаковых крупностей · есть хотя бы одна деталь и один крупный · первый кадр объясняет место, последний ставит крючок или точку · линия взгляда не переворачивается · все предметы есть в списке артефактов. --- ## 11. Порядок сборки ```bash # 1. арты node generate-art.mjs # новые id генерируются, старые пропускаются cd art-src && sips -s format jpeg -s formatOptions 85 NAME.png --out ../site/assets/art/NAME.jpg # 2. страницы # выпуск пишется руками; сущности/люди — билдерами python3 build_universe.py && python3 build_people_pages.py # порядок важен! # 3. регистрация выпуска # карточка в site/index.html + ссылки «Где встречается» у задействованных сущностей # 4. проверка ссылок и картинок, затем публикация в сервис node publish.mjs # сверяет хеши и заливает только изменившееся node publish.mjs --prune # плюс убирает страницы, которых больше нет ``` **Где живёт сайт.** Страницы и ассеты хранятся не на диске веб-сервера, а в сервисе **skaz.ai-delivery.ru** (`data/comics/site`) и отдаются им же по `/comics/*`. Домен **comics.ai-delivery.ru** проксирует туда целиком — то есть всё, что видит посетитель, приезжает из сервиса. API сервиса: | Метод | Путь | Зачем | |---|---|---| | GET | `/api/comics/pages` | манифест страниц и ассетов с хешами | | GET | `/api/comics/pages/` | страница (JSON, либо `?format=html`) | | PUT | `/api/comics/pages/` | публикация страницы | | DELETE | `/api/comics/pages/` | снять страницу с публикации | | GET/PUT | `/api/comics/assets/` | ассеты | Запись требует заголовка `Authorization: Bearer $COMICS_PUBLISH_TOKEN`. Отдельно живёт **API вселенной** — `/api/public/u/COBRA/stories`, `/entities`, `/art/...`: из него главная строит живую полку выпусков, а `issue.html?story=` рендерит выпуск целиком. Статические `NN-*.html` остаются фолбэком. --- ## 12. Чек-лист приёмки выпуска - [ ] Заголовок в каноне: «Дело о …» или «Как …», понятный без контекста. - [ ] 3–5 действующих лиц, у каждого строка «Чувствует:». - [ ] 4–6 битов, в каждом `kicker` → заголовок → текст → блок `emo`. - [ ] Минимум одна полоса чата с живой перепиской и конкретикой (даты, числа, номера тикетов). - [ ] Раздел «За кадром» из 4 шагов. - [ ] Все компании и хендлы — псевдонимы. - [ ] Ни одной надписи внутри картинок. - [ ] Карточка выпуска добавлена в `index.html`. - [ ] Перелинковка: выпуск ссылается на сущности, сущности — на выпуск. - [ ] Версия CSS сбита, ссылки и картинки проверены, задеплоено, страница отвечает 200. --- ## 13. Скелет страницы выпуска ```html Выпуск #NN — ЗАГОЛОВОК · COBRA Comics
Обложка
← Все выпуски
Сценарий использования №NN

ЗАГОЛОВОК
В ДВЕ СТРОКИ

ЛИД: компания, ситуация, боль.

ТИЗЕР с интригой ↓

Действующие лица
ИМЯ
ИМЯ
Роль в этой истории.
Чувствует: ЭМОЦИЯ — «реплика от первого лица».
Страница: ИМЯ →
Сцена: ПОДЗАГОЛОВОК
Время и место.
описание
Дзынь!
Кадр 1

ЗАГОЛОВОК БИТА

Что происходит.

Эмоция и вывод кадра.
💬 Чат Компания × RoboMarketing · дата
КлиентРеплика клиента.
Алина · COBRAОтвет агента с конкретикой.
Кульминация

ЗАГОЛОВОК

Разбор переписки.

Что почувствовал человек.
За кадром: как это устроено
Шаг 1

Название

  • Пункт.
Шаг 2

Название

  • Пункт.
Шаг 3

Название

  • Пункт.
Шаг 4

Название

  • Пункт.
``` --- ## 14. Бриф нового выпуска Заполните и отдайте вместе с этим файлом. ```yaml номер: "#18" рабочее_название: "Дело о ..." ситуация: | Что произошло на самом деле. Компания, этап, что пошло не так или что получилось. Можно вставить реальную переписку — её анонимизируют по разделу 4. кто_участвует: - "Алина Коброва — что делает в этой истории" - "Имя клиента — роль, что чувствует" - "Сотрудник — роль" какие_сущности_продукта: ["Оркестратор", "Терминалка", "Чешуйка Сундук"] в_чём_боль: "Что мучило человека до" в_чём_результат: "Что стало после, с цифрами" эмоция_финала: "облегчение / контроль без погружения / гордость" нужен_сториборд: да/нет # если да — 15-секундными сценами по 9 кадров ``` --- ## 15. Готовые примеры для сверки | | | |---|---| | Классический выпуск | https://comics.ai-delivery.ru/02-haloshop.html | | Выпуск про устройство | https://comics.ai-delivery.ru/13-chat-dossier.html | | Выпуск с макетом интерфейса | https://comics.ai-delivery.ru/17-g005-group.html | | Энциклопедия мира | https://comics.ai-delivery.ru/00-universe.html | | Стандарт планов и сцен | https://comics.ai-delivery.ru/film-language.html | | Сториборд по стандарту | https://comics.ai-delivery.ru/storyboard-02.html | | Карта персонажа | https://comics.ai-delivery.ru/sheet-alina.html | Актуальная версия этого файла: **https://comics.ai-delivery.ru/cobra-canon.md** --- ## 16. Сегменты аудитории Каждый выпуск размечен тегами сегментов — по ним собираются страницы-подборки для презентации разным людям. | Сегмент | Страница | Кому показываем | |---|---|---| | Агентства | `for-agency.html` | CRM- и маркетинговым агентствам, интеграторам (герой — **Вадим**) | | Клиенты | `for-client.html` | заказчикам ботов и агентов | | Руководителям | `for-team.html` | тем, кто разгружает свою команду | | Продажи | `for-sales.html` | отделам продаж | | Партнёры | `for-partner.html` | реселлерам и партнёрам | | Продукт | `for-product.html` | техническим специалистам | Правила: - Реестр выпусков и подборок — в `segments.py`; страницы собирает `build_site.py`. - У каждого выпуска в подборке есть **своя подсказка «почему это стоит прочитать»**, написанная от лица сегмента, — не пересказ выпуска, а его польза для этого читателя. - Теги видны чипами на карточках каталога и в шапке самого выпуска. - Досье агентов (серии K/S/T) живут **не на главной**, а на странице Алины Кобровой в разделе «Гардероб» (`entity-alina.html#wardrobe`) — агенты и есть её костюмы. - Коммерческое предложение сегмента выносится отдельной врезкой на его страницу. Для агентств и партнёров это **постоянный процент от каждого платежа клиента** (не разовая комиссия), белая метка, свой сервер и своя цена конечному клиенту.