Hermoso — MCP, CLI и Skills
Запускайте весь маркетинг из любого AI-агента: Claude Code, Claude.ai, Cursor, Codex или собственных скриптов. Исследуйте рекламу, которая уже выигрывает на рынке, генерируйте готовые изображения и видео (с вашим реальным продуктом в кадре, включая текст и CTA), публикуйте их в своих соцканалах и создавайте и ведите рекламные кампании под ними — и всё это через инструменты MCP, CLI или устанавливаемые skills для Claude.
856 инструментов. tools/list всегда остаётся авторитетным источником; hermoso_capabilities (бесплатно) возвращает актуальный каталог моделей с точной стоимостью в кредитах за каждый рендер, а также полную карту возможностей.
Большая часть — бесплатно. Публикация и планирование постов, создание и управление платными кампаниями, аналитика и инсайты, комментарии и личные сообщения, коннекторы, профили бренда и места в команде — бесплатны на любом тарифе: без платы за пост, за канал или за место. Кредиты расходуются только на запуск AI-модели (изображения, видео, голос, текст, планирование, пост-продакшн) и на исследование в Ad Spy; публикация уже отрендеренной рекламы никогда не списывается второй раз. Единственное исключение — X (Twitter): публикация и чтение там тарифицируются в несколько кредитов за вызов, потому что сам X берёт плату за каждый запрос к API.
С чем интегрируется. Рекламные платформы: Meta, Google Ads, TikTok Ads, LinkedIn Ads, Reddit Ads, X Ads, Pinterest Ads, Snapchat Ads, Microsoft Advertising, Apple Search Ads и ChatGPT Ads, а также товарные фиды в Google Merchant Center. Публикация и планирование — десять каналов: Facebook, Instagram, Threads, TikTok, YouTube, X, LinkedIn, Pinterest, Bluesky и Telegram. Мессенджеры: WhatsApp (здесь вы пишете человеку, поэтому это не одиннадцатый канал публикации). Рекламные исследования: библиотеки объявлений Meta, Google и LinkedIn, а также органика TikTok, Instagram, YouTube, Threads и Reddit. Аналитика: Google Analytics 4, Google Search Console и собственная статистика постов и кампаний каждой подключённой платформы. Файлы: Google Drive, Sheets, Docs и OneDrive.
Это не «всё или ничего». Исследование, создание, публикация и планирование, управление рекламой — четыре независимые области: ни один инструмент не требует, чтобы вы сначала воспользовались другим. Публикуйте или планируйте уже готовые креативы, ничего не генерируя здесь (upload_file превращает любой локальный или внешний файл в URL, который принимают все инструменты публикации, планирования и сборки рекламы); создавайте и читайте кампании в своих рекламных аккаунтах со своими креативами; исследуйте конкурентов без созданного бренда и без подключённых каналов; или сгенерируйте файл вообще без подключений и просто скачайте его. Используйте только нужный фрагмент — или всё вместе.
Установка одной командой
Этот репозиторий — одновременно маркетплейс плагинов, расширение Gemini CLI и пакет skills, поэтому кодинг-агент подключит Hermoso одной строкой. Любая установка приносит одни и те же пять skills (hermoso-research, hermoso-generate, hermoso-ad-from-brand, hermoso-product-photoshoot, hermoso-marketing), и эти skills управляют CLI hermoso через npx. Список инструментов в вашу сессию не загружается: команда CLI ничего не стоит, пока не выполнится, и при этом даёт доступ ко всем инструментам. При первом запуске агент выполняет npx -y hermoso auth login — откроется браузер для входа.
Claude Code:
claude plugin marketplace add hermoso-ai/hermoso && claude plugin install hermoso@hermoso
Внутри сессии то же самое делается командами /plugin marketplace add hermoso-ai/hermoso, а затем /plugin install hermoso@hermoso.
Codex CLI (читает тот же файл маркетплейса):
codex plugin marketplace add hermoso-ai/hermoso && codex plugin add hermoso@hermoso
Gemini CLI:
gemini extensions install https://github.com/hermoso-ai/hermoso
Cursor, OpenCode, GitHub Copilot, Windsurf и ещё около 75 агентов — через открытый установщик skills:
npx skills add hermoso-ai/hermoso
Он спросит, в каких агентов устанавливать; -a opencode (или cursor, github-copilot, windsurf) выбирает одного, а --skill hermoso-research устанавливает только один skill. Плагины агентов VS Code тоже могут принять этот репозиторий целиком: выполните Chat: Install Plugin From Source и вставьте https://github.com/hermoso-ai/hermoso.
ChatGPT и Claude.ai работают в браузере и не могут запускать CLI, поэтому для них предусмотрен hosted-коннектор (см. ниже). Десктопное приложение ChatGPT и администраторы рабочих пространств ChatGPT тоже могут прочитать файл .claude-plugin/marketplace.json из этого репозитория — он устанавливает skills.
Нет браузера на машине? Создайте ключ в приложении в разделе MCP & CLI и выполните npx -y hermoso auth login --token .
Какой интерфейс использовать вашему агенту?
Есть два варианта, и правильный определяется тем, что умеет ваш клиент, а не нашими предпочтениями.
| Ваш клиент | Что использовать | Почему |
|---|---|---|
| Работает в браузере: Claude.ai, ChatGPT, Claude Desktop | hosted-коннектор https://app.hermoso.ai/mcp | Такие клиенты не могут запускать локальный процесс, поэтому URL — единственный доступный им вариант. Ничего устанавливать не нужно, ключ вставлять не надо, а полный набор инструментов приходит вместе с сохранённым контекстом бренда. Для этих клиентов это правильное решение, а не компромисс. |
| Умеет запускать shell: Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw, Hermes, ваши собственные скрипты | установка одной командой выше или сам CLI (npm install -g hermoso) | Манифест инструментов загружается в каждую сессию независимо от того, вызывается инструмент или нет. Команда shell ничего не стоит, пока не выполнится, и даёт доступ ко всем инструментам, а не только к набору по умолчанию. |
CLI отвечает на те же вопросы, что и манифест инструментов, — по требованию и только по запросу:
npx -y hermoso tools --search reddit # every matching tool, name + one line
npx -y hermoso tools plan_ad # one tool's full argument schema
npx -y hermoso call plan_ad --json '{"product":"…"}' # run it
tools и tools читают реестр, встроенный в пакет (без ключа, без сети, без входа), поэтому агент может изучить весь продукт ещё до того, как кто-либо авторизуется. Кредиты расходует только call, и только для него один раз нужен hermoso auth login.
Хотите, чтобы инструменты появились и в собственном списке вашего кодинг-агента? Это делает MCP-сервер — и он опционален. Одного hermoso auth login достаточно и для CLI, а также чтобы claude mcp add hermoso -- npx -y hermoso mcp подхватил ключ без блока env: тогда агент сможет обращаться к нативному инструменту, когда нужны структурированные результаты, и запускать shell, когда нужна широта охвата. Это расходует контекст в каждой сессии, поэтому добавляйте его, когда сессия сосредотачивается на одной области и делает там много вызовов; enable_tools({groups:['ads']}) включает управление кампаниями одним бесплатным вызовом.
Ваш агент может зарегистрироваться сам
Агент без аккаунта Hermoso может создать его, получить собственный ключ и начать рендерить рекламу в той же сессии. Ни человека у браузера, ни заявки, ни ожидания.
{ "id": "cs_...", "checkout_url": "https://checkout.stripe.com/...", "claim_token": "hsc_...", "email": { "address": "you@yourcompany.com", "verified": false } }
# email = the human behind the account. A verification link goes there; the account works before it is clicked.
# It is a contact mailbox only, never a sign-in. GET /v1/account/email reports the state; POST /v1/account/email/resend re-sends or changes it.
# 2. Pay at checkout_url. Store claim_token first: it is returned only in that response.
# 3. Claim it. Poll until status is "ready".
curl -sX POST https://app.hermoso.ai/v1/signup/cs_.../claim \
-H 'content-type: application/json' \
-d '{"claim_token":"hsc_..."}'
1. Запустите регистрацию. Этот вызов не требует учётных данных — ведь учётные данные как раз создаются в его результате.
curl -sX POST https://app.hermoso.ai/v1/signup \
-H 'content-type: application/json' \
-d '{"plan":"pro","period":"mo","email":"you@yourcompany.com"}'
# -> { "id": "cs_...", "checkout_url": "https://checkout.stripe.com/...", "claim_token": "hsc_...", "email": { "address": "you@yourcompany.com", "verified": false } }
# email = the human behind the account. A verification link goes there; the account works before it is clicked.
# It is a contact mailbox only, never a sign-in. GET /v1/account/email reports the state; POST /v1/account/email/resend re-sends or changes it.
# 2. Pay at checkout_url. Store claim_token first: it is returned only in that response.
# 3. Claim it. Poll until status is "ready".
curl -sX POST https://app.hermoso.ai/v1/signup/cs_.../claim \
-H 'content-type: application/json' \
-d '{"claim_token":"hsc_..."}'
# -> { "status": "ready", "api_key": "hmk_...", "credits": 3000 }
Полученный ключ hmk_ — это те же учётные данные, которые принимают все остальные интерфейсы на этой странице: /v1, MCP-сервер, CLI. Укажите его своему клиенту — и весь функционал открыт.
Оплатить уже сегодня способен агент с доступом к браузеру. Страница оплаты размещена на стороне Stripe, поэтому Claude в Chrome и подобные клиенты проходят её полностью самостоятельно. Всё остальное — передача в один клик: отправьте checkout_url тому, у кого карта. Та же схема работает и потом, когда вы уже работаете: buy_credits и upgrade_plan создают готовую ссылку для оплаты дополнительных кредитов или перехода на больший тариф, а billing_status в любой момент показывает баланс.
Агент с собственным платёжным credential может платить вовсе без человека. Запрос POST /api/billing/machine-payment с телом {"packId": "pack-1k"} возвращает HTTP 402 с challenge-заголовком WWW-Authenticate: Payment (Stripe, через Machine Payments Protocol); оплатите challenge и повторите запрос — тот же кредитный пакет зачислится на тот же баланс. GET /api/billing/config перечисляет пакеты в секции machinePayments. Те же пакеты, те же цены, никакой побиллинговой оплаты за вызовы.
Агентный путь требует платного тарифа. Любого из них. Бесплатный тариф рассчитан на человека, регистрирующегося через app.hermoso.ai; при попытке запросить его здесь API вернёт отказ с соответствующим пояснением. Ничего не создаётся до завершения оплаты, так что неоплаченная регистрация не оставляет после себя аккаунта и ничего не стоит.
Одно действие всё же требует человека — и об этом стоит знать заранее. Подключение социального или рекламного аккаунта предполагает экран согласия OAuth, а такой экран невозможно пройти headlessly ни на одной платформе. list_connectors показывает, что уже подключено, а что нет. Всё остальное работает без браузера вообще: исследования, генерация, публикация в уже подключённый канал, сборка кампаний, отчётность.
Полные схемы запросов и ответов, а также все остальные endpoint'ы описаны в OpenAPI-документе по адресу app.hermoso.ai/openapi.json, который генерируется динамически из той же таблицы, что монтирует маршруты.
Мгновенный старт: hosted-коннектор Claude.ai
Вставьте https://app.hermoso.ai/mcp?src=readme в Claude → Settings → Connectors → Add custom connector, выберите Always required, когда Claude спросит про аутентификацию (его детектор предложит «None», потому что наш discovery-handshake открыт; вариант «None» оставил бы каждый вызов инструмента без аутентификации), подтвердите через свой аккаунт Hermoso — и готово: весь набор инструментов с вашим сохранённым контекстом бренда, тарифицируемый по вашему плану.
Быстрый старт для Claude Code (одна команда)
-
Получите аккаунт на app.hermoso.ai. Бесплатный тариф доступен сразу; тарифные планы и кредиты те же, что использует веб-Studio. Либо вообще пропустите браузер и позвольте агенту самостоятельно зарегистрироваться на платном тарифе через
POST /v1/signup(см. выше). -
Установите плагин. Он добавляет пять навыков Hermoso, которые управляют CLI
hermosoчерезnpx:
claude plugin marketplace add hermoso-ai/hermoso && claude plugin install hermoso@hermoso
Уже внутри сессии? Выполните /plugin marketplace add hermoso-ai/hermoso, затем /plugin install hermoso@hermoso.
Codex, Gemini CLI и остальные — установка одной командой.
-
Авторизуйтесь один раз. Команда
npx -y hermoso auth loginоткрывает браузер; ваш агент также запустит её сам, когда впервые понадобится Hermoso. На машине без браузера используйтеnpx -y hermoso auth login --token hmk_…с ключом из вкладки MCP & CLI, раздел Terminal & API keys. -
Просите то, что нужно, обычными фразами в промптах. Claude Code сам подберёт нужный навык Hermoso и выполнит команды. Вам не придётся вводить ни одну из них.
Предпочитаете установить CLI вручную? npm install -g hermoso добавит ту же команду hermoso в ваш PATH, и навыки будут использовать её при наличии.
Hosted-URL работает и в Claude Code, но это худший вариант — и вот почему: команда claude mcp add --transport http hermoso "https://app.hermoso.ai/mcp?src=readme" принимается, однако затем claude mcp list сообщает ! Needs authentication, поскольку клиент не запускает OAuth-поток самостоятельно: придётся открыть сессию, выполнить /mcp, найти сервер и нажать Authenticate. Проверено на Claude Code 2.1.241 23.08.2026.
Теперь у вашего агента есть вся студия с контекстом вашего workspace: профиль бренда, продукты, логотипы и накопленная память, настроенные в веб-приложении, применяются автоматически (get_brand показывает сохранённое; просто не указывайте brand в plan_ad/plan_variations). Рендеры расходуют кредиты Hermoso по тем же ценам, что и в Studio. Кредиты тратятся только на запуски AI-моделей и исследования Ad Spy; публикация, планирование, управление рекламой и аналитика бесплатны на любом тарифе (исключение — публикации в X и чтение данных X, тарифицируемые за вызов; управление рекламой X бесплатно).
1. MCP-сервер (stdio), опционально в агенте для кодинга
hermoso mcp запускает stdio MCP-сервер с полным набором инструментов — для клиента, который хочет видеть инструменты Hermoso в своём списке. Опубликованный пакет hermoso избавляет от клонирования репозитория: npx -y hermoso mcp сам скачивает и запускает его. Авторизуйтесь один раз через CLI — и ключ не понадобится ни в одной конфигурации клиента, потому что hermoso mcp читает bearer-токен, сохранённый командой hermoso auth login:
npm install -g hermoso && hermoso auth login && claude mcp add hermoso -- npx -y hermoso mcp
На машине без браузера пропустите авторизацию и передайте ключ напрямую клиенту:
claude mcp add hermoso -e HERMOSO_TOKEN=hmk_… -- npx -y hermoso mcp
Cursor / Codex: авторизуйтесь так же, затем добавьте в mcp.json (Codex использует TOML-эквивалент). Блок env можно полностью убрать, если вы авторизовались выше; он нужен для CI, где процесс не имеет доступа к вашей домашней директории:
{ "mcpServers": { "hermoso": { "command": "npx", "args": ["-y", "hermoso", "mcp"],
"env": { "HERMOSO_API_BASE": "https://app.hermoso.ai", "HERMOSO_TOKEN": "<your token>" } } } }
Затем просто попросите агента: «Сгенерируй рекламное изображение с помощью Hermoso».
Что охватывают 856 инструментов
Шпионаж за рекламой и исследования — find_competitors, competitor_teardown, pull_competitor_ads, research_ads; рекламные библиотеки Meta / Google / LinkedIn (search_meta_ads, search_google_ads, search_linkedin_ads); органика в соцсетях (search_tiktok, search_instagram, search_youtube, search_reddit, search_threads); fetch_social_data, mine_angles, analyze_video, check_ad_policy, list_skills / get_skill.
Создание — draft_brand → plan_ad → render_ad (студийный конвейер качества: композитный текст, чистая речь, музыка, брендированная финальная заставка), либо generate_image / generate_video / generate_avatar (UGC-авторы + lip-sync).
Сохранённый каст рабочего пространства переиспользуется: list_creators возвращает всех сохранённых авторов с URL их портретов, save_creator добавляет автора, delete_creator удаляет. Передайте портрет заново в generate_avatar / generate_video / recast_motion — и в каждом ролике будет сниматься ОДИН И ТОТ ЖЕ человек, а не новое лицо при каждом рендере.
А ещё: make_template_ad (нативные HTML-форматы рекламы), make_explainer, product_sizzle, make_thumbnail, clone_static, recast_motion, reframe_video, upscale_video, dub_video, change_voice, finish_video, fix_beat, stitch_video, clip_video, post_edit, плюс plan_variations + score_ad для размножения и ранжирования.
Длительность задаёте вы: передайте durationSeconds в plan_ad — и раскадровка будет написана под неё. Длительность, укладывающаяся в один клип модели рендера, отрисуется одним непрерывным дублем; более длинная собирается из актов (на модели с клипом 15 с: 40 с = 15+15+10) и никогда не сжимается по времени. То, что помещается в один клип, — это собственный максимум модели, а не фиксированное число: большинство видеомоделей ограничивают клип 15 секундами, а самая «длинноклиповая» выдаёт 30 секунд одним непрерывным дублем с нативным синхронизированным звуком. hermoso_capabilities — это живой список: длительности, разрешения и точная стоимость в кредитах для каждого тарифа. А чтобы получить эту модель, укажите её в model: рендер без указания модели маршрутизируется через более узкий авто-пул.
Песочница для сырых моделей — полный каталог (30+ моделей для изображений / видео / голоса / текста, каждая с точной стоимостью в кредитах за рендер) без рекламной обвязки: generate_image / generate_video с useBrand:false, generate_voice, generate_text.
Публикация в собственных каналах — их десять: Facebook, Instagram и Threads (post_to_meta), TikTok (post_to_tiktok), YouTube (post_to_youtube + update_youtube_video, youtube_video_insights, чтение и ответы на комментарии), X (post_to_x, x_post_metrics, x_post_insights, x_mentions, list_x_dms, send_x_dm), профиль LinkedIn и страницы компаний (post_to_linkedin, post_to_linkedin_page), Pinterest (post_to_pinterest + доски), Bluesky (post_to_bluesky, delete_bluesky_post, bluesky_post_metrics, а также list_bluesky_convos / read_bluesky_dm / send_bluesky_dm) и Telegram (post_to_telegram, delete_telegram_message, list_telegram_chats). schedule_post / list_scheduled / cancel_scheduled дают единый контент-календарь ровно по этому набору. upload_file загружает любые внешние или локальные медиа, а не только рендеры Hermoso.
Публикация в X списывает кредиты за каждый вызов API (X берёт плату за запрос); пост со ссылкой стоит в 13 раз дороже, чем без неё.
Отложено и названо, а не спрятано: Google Business Profile реализован (post_to_google_business, отзывы, вопросы и ответы, аналитика), но не предлагается — Google добавляет этот API в allowlist по каждому проекту, а наш читает 0 QPM, поэтому каждый вызов возвращал бы 403 у любого пользователя. Он присутствует в перечислении каналов schedule_post, но отклоняется при постановке в очередь.
Общение с клиентами в WhatsApp — это мессенджер, а не одиннадцатый канал публикации: вы пишете человеку, и здесь ничто не публикуется в ленту. list_whatsapp_accounts находит Business Account и его номера, list_whatsapp_templates / create_whatsapp_template / delete_whatsapp_template управляют шаблонами, которые проверяет Meta, а send_whatsapp_message отправляет сообщение — с подтверждением, потому что оно доходит до реального телефона, и Meta выставляет бизнесу счёт за разговор. Два ограничения, которые являются постоянными фактами об API Meta, а не чем-то временным: Hermoso не получает вебхуки WhatsApp, поэтому истории сообщений для чтения нет — это не интерфейс входящих, и list_inbox его не покрывает; и вне 24-часового окна, которое открывается, когда клиент пишет первым, WhatsApp принимает только ОДОБРЕННЫЙ шаблон и ничего больше.
Запуск рекламы — полные деревья кампаний, создаваемые на паузе и считываемые обратно, прежде чем что-либо будет отчитано, с подтверждением каждого изменения расходов, на одиннадцати платформах: Meta, Google Ads, LinkedIn Ads, Reddit Ads, Pinterest Ads, Microsoft Advertising, ChatGPT Ads (Advertiser API от OpenAI), X Ads, TikTok Ads, Snapchat Ads и Apple Ads (Apple Search Ads в App Store). У каждой есть инструменты списка, отчётов, создания и управления бюджетом/статусом (например, list_google_ads_campaigns, google_ads_report, create_google_ads_campaign, set_google_ads_budget, set_google_ads_status). Snapchat требует одного дополнительного шага, которого нет у остальных: реклама указывает на CREATIVE, и каждый креатив Snapchat должен нести id публичного профиля — создайте его с помощью upload_snapchat_ads_creative.
Наполнение торговых поверхностей — Google Merchant Center — это каталог, который рекламирует розничная кампания Performance Max или Shopping (create_google_ads_performance_max_campaign принимает merchantCenterId), и управлять им можно отсюда: аккаунты и их статус, источники данных, upsert / обновление / удаление товаров, остатки по регионам, квота, merchant_report для эффективности на уровне товаров, уведомления и источники конверсий, а также цикл отклонений — list_merchant_issues сообщает, что не так, а merchant_issue_help возвращает собственное документированное исправление от Google. Акции требуют собственной регистрации мерчанта в программе акций Google; без неё Google отказывает в этом sub-API сразу. Microsoft Merchant Center покрыт по той же схеме (магазины, каталоги, товары, проблемы) для Bing Shopping.
Измерение результата рекламы — Google Analytics 4 замыкает цикл. Все остальные коннекторы здесь сообщают, чего реклама стоила; этот — единственный, кто сообщает, что она сделала. analytics_report разбивает сессии, пользователей, конверсии и выручку по каналу, источнику/медиуму, кампании, посадочной странице, стране, устройству или дате, так что кампания, построенная Hermoso, и выручка, которую она принесла, оказываются в одном разговоре. analytics_realtime показывает, кто сейчас на сайте. Начните с list_analytics_properties — инструменты принимают числовой id свойства, а не G-XXXXXXXXX Measurement ID из вашего трекинг-сниппета, и именно это преобразует одно в другое. Он не только читает, но и пишет: create_analytics_key_event помечает событие, которое GA4 уже собирает, как ключевое — именно это делает его импортируемым в Google Ads как конверсию — а create_analytics_custom_dimension регистрирует параметр события, чтобы отчёты могли разбиваться по нему, при этом list_analytics_definitions показывает, что свойство уже измеряет. Он входит под тем же аккаунтом Google, что и Google Ads, YouTube и Drive, но это отдельное подключение.
Только GA4 — в API нет поверхности Universal Analytics. Пользовательское измерение можно архивировать, но нельзя удалить, и свойство вмещает 50 измерений с областью действия события.
Файлы — CRUD в Google Drive (save_to_drive, list_drive_files, update_drive_file, delete_drive_file, create_drive_folder), Google Sheets (create_sheet, append_to_sheet, read_sheet), Google Docs (create_doc, append_to_doc) и OneDrive (save_to_onedrive + полный CRUD).
Рабочее пространство и аккаунт — брендовые рабочие пространства (list_brands, create_brand, use_brand, update_brand, delete_brand — один аккаунт вмещает много брендов, так что агентство ведёт здесь всех клиентов), память (remember, forget, list_memory), пользовательские навыки (save_skill, get_skill, list_skills, delete_skill — единая библиотека, поглотившая прежние персоны AI-Employee), команда (list_team, invite_member, remove_member, set_role), настройки (get_settings, update_settings — включая язык, на котором пишется каждая реклама, сценарий и план), коннекторы (list_connectors, list_connector_accounts, set_connector_accounts, disconnect_connector) и биллинг (hermoso_credits, billing_status, buy_credits, upgrade_plan, set_auto_reload), плюс list_jobs / get_job для асинхронных рендеров.
Аккаунты коннекторов выбираются, а не угадываются. Один человек часто администрирует несколько страниц Facebook, клиентов Google Ads или страниц компаний LinkedIn. Доступны только те аккаунты, что отмечены для бренда — это обеспечивается на стороне сервера, а пустой выбор не даёт доступа ни к чему. Привязка нового аккаунта — единственный шаг, который не проходит без интерфейса (это экран согласия OAuth, поэтому пользователь делает это в приложении).
Задачи рендера встают в очередь на стороне сервера и опрашиваются до завершения, возвращая обслуживаемый URL.
2. CLI: путь без контекста для терминальных агентов
bin/hermoso.mjs открывает весь набор инструментов MCP в виде subprocess-команд: агент может вызывать их из shell, вместо того чтобы таскать с собой громоздкий манифест инструментов.
npm install -g hermoso # installs `hermoso`
hermoso capabilities # valid model ids + costs (run first)
hermoso create --brand "YourBrand" --product "your best-selling product" --format image
hermoso generate image --prompt "…" --ref ./product.png --wait
hermoso generate video --prompt "…" --duration 8 --wait
hermoso competitors yourbrand.com
hermoso research "Liquid Death’s longest-running ads"
Добавьте --json к любой команде, чтобы получить машиночитаемый вывод.
Эти команды — типовой путь, а не предел. Любой инструмент MCP-сервера доступен и отсюда, включая группы рекламных кампаний и аналитики, которые коннектор по умолчанию не показывает в своём списке:
hermoso tools # every tool, grouped, name + one line
hermoso tools --group ads --search reddit # narrow it
hermoso tools create_meta_campaign # that tool's full argument schema
hermoso call create_meta_campaign --json '{"name":"…"}' # run it
hermoso create_meta_campaign --name "…" # same thing, shorter
Команда call проходит через тот же обработчик, ту же валидацию аргументов и те же механизмы подтверждения и контроля расходов, что и MCP-сервер, поэтому дублирующей реализации, которая могла бы разойтись с основной, просто нет. Команды tools и tools читают реестр, встроенный в пакет, поэтому им не нужны ни ключ, ни сеть, ни вход в аккаунт.
3. Skills: что устанавливает кодинг-агент
В каталоге skills/ лежат пять устанавливаемых навыков:
| Навык | Что делает |
|---|---|
hermoso-research | Находит конкурентов, достаёт их реально работающие объявления и выявляет хуки, которые стоит позаимствовать |
hermoso-generate | От промпта до готового изображения, видео, клипа с аватаром или смонтированной нарезки |
hermoso-ad-from-brand | От бренда или домена до одного готового объявления в фирменном стиле — с концепцией и рекламными текстами |
hermoso-product-photoshoot | Реальная фотография продукта, вписанная в студийные, lifestyle- или hero-сцены |
hermoso-marketing | Весь цикл: исследование, создание, публикация и планирование, платные кампании, измерение результатов |
Именно эти навыки добавляет установка одной командой в начале этой страницы — в Claude Code, Codex, Gemini CLI и через npx skills add. Если у вас клон репозитория, подойдёт и простое копирование:
cp -r skills/* ~/.claude/skills/
Затем вызовите /hermoso-ad-from-brand an ad for yourbrand.com, our hero product.
Просите своими словами
Навыки выбираются сами. Это целые промпты, а не команды:
-
Найди моих топ-5 конкурентов по [продукт + URL], достань их лучшие объявления в Meta и TikTok за последние 90 дней и назови 3 хука и 2 формата, которые стоит позаимствовать, — с доказательствами.
-
Сделай объявления на эту неделю для [бренд]: два хука в двух форматах, один UGC и один продуктовый визуал, 9:16. Проставь им оценки и проверь на соответствие политикам, прежде чем я их выпущу.
-
Вот объявление конкурента: [ссылка]. Разбери, почему оно работает, а затем пересобери эту структуру под мой продукт, мой брендинг и свежий хук.
-
Заполни мою очередь публикаций на ближайшие 7 дней в Instagram, TikTok, X и LinkedIn на основе моего лучшего поста, с подписями под каждый канал.
-
Возьми прошлонедельного победителя и собери на его основе тестовую кампанию с бюджетом $20 в день на Meta и TikTok: три группы объявлений, по одному углу подачи в каждой. Оставь её на паузе и выведи дерево кампании, чтобы можно было всё проверить.
-
Собери результаты кампаний за прошлый месяц по всем платформам. Какие два креатива выиграли, почему — и что должен содержать бриф на следующий месяц?
Конфигурация
| Переменная окружения | Назначение |
|---|---|
HERMOSO_API_BASE | Базовый адрес (origin) API Hermoso (по умолчанию https://app.hermoso.ai — укажите http://localhost:3000, если запускаете приложение сами) |
HERMOSO_TOKEN | Bearer-ключ агента (hmk_…) — обязателен для работы с hosted-версией приложения |
HERMOSO_PROFILE | Идентификатор бренд-воркспейса — для аккаунтов с несколькими брендовыми профилями |
HERMOSO_OWNER | Только для бренда, которым с вами поделился другой аккаунт (командный воркспейс): идентификатор аккаунта-владельца. Задаётся вместе с HERMOSO_PROFILE, причём в HERMOSO_PROFILE нужно указать profileUuid этого воркспейса — короткий слаг бренда будет отклонён. Выполните list_brands (или hermoso list_brands в CLI), чтобы вывести оба значения для каждого доступного вам воркспейса. Сервер заново авторизует эту пару при каждом запросе, поэтому неверное значение будет отклонено, а не принято на веру. |
mcp/http.mjs — транспорт удалённого коннектора hosted-версии (вставьте URL в Claude.ai → Connectors). Он включён в этот репозиторий ради прозрачности и отказывается монтироваться без аутентифицированной идентичности — никаких анонимных трат, никогда.
Лицензия
MIT © Hermoso