Kör annonser från kommandoraden

npm install -g hermoso ger dig en skriptbar marknadsförings-CLI: hämta de annonser dina konkurrenter fortsätter att betala för, rendera en färdig annons, kontrollera ditt creditsaldo och skicka vad som helst av det till jq. Samma paket levererar också hela MCP-servern med 922+ verktyg över stdio, så din terminalagent kan använda den yta som är billigast.

Annonsverktyg är nästan helt instrumentpaneler, vilket gör dem nästan helt oautomatiserbara. Du kan inte köra en instrumentpanel med cron, du kan inte skicka en instrumentpanel till jq, och du kan inte be en terminalagent klicka i en. Hermoso CLI finns för att annonsloopen ska sluta vara en plats du besöker och i stället bli något du kan skripta.

Installera och logga in:

npm install -g hermoso
hermoso auth login

auth login startar en lyssnare på loopback och öppnar webbläsaren, samma mönster som gh och firebase använder, så det finns inget att klistra in. Den utfärdade nyckeln skrivs till ~/.hermoso/config.json med behörigheter som bara ägaren har (katalogen 0700, filen 0600), eftersom den bär på verklig spendeauktoritet. För CI lagrar hermoso auth login --token <key> en nyckel icke-interaktivt, och HERMOSO_TOKEN / HERMOSO_API_BASE överskrider konfigurationen från miljön.

Kommandona

Varje kommando tar --json, och det är hela poängen: den läsbara raden är en bekvämlighet, JSON:en är kontraktet.

KommandoVad det gör
hermoso capabilitiesGiltiga modell-id:n och deras exakta creditkostnader. Kör detta först. Det är gratis och skrivskyddat, och det är så du slutar gissa modellnamn.
hermoso creditsSaldo, sessionsanvändning och nyligen prissatta anrop.
hermoso brand --domain example.comLäser in en webbplats som en varumärkesprofil (produkter, färgpalett, logotyp, röst) som senare renders bygger på.
hermoso competitors --domain example.comHittar direkta rivaler och liknande varumärken som är värda att lära av.
hermoso ads --company "Brand" Hämtar varumärkets riktiga pågående annonser från Meta-, Google- och LinkedIn-biblioteken, dedupade och sorterade.
hermoso research "longest-running protein bar ads"Research på naturligt språk i biblioteken plus organisk TikTok, som returnerar de annonser den hittade.
hermoso create --brand … --product … --format videoGör en brief till ett färdigt annonskoncept: textvarianter plus en bildidé eller en videostoryboard, med de modell-id:n som behövs för att rendera den.
hermoso generate image --prompt "…" --ref ./bottle.pngRenderar och returnerar en servad URL. --ref komponerar in din riktiga produkt, så att etiketten på skärmen är din faktiska SKU.
hermoso jobs / hermoso fetch <url>Inspekterar renders som pågår. Löser en asset till både en klickbar och en direkt nedladdnings-URL.
hermoso mcpKör hela 922+ verktygs-MCP-ytan över stdio, samma verktyg som den hostade servern exponerar.

Två ytor, ett paket, och varför det spelar roll

Terminalagenter betalar för verktyg två gånger: en gång i manifestet de bär i kontexten och en gång i tokens varje anrop kostar. Ett manifest med 922+ verktyg är inte gratis. Därför levererar samma paket båda ytorna och låter agenten välja:

  • MCP (hermoso mcp, eller den hostade https://app.hermoso.ai/mcp) när du vill ha hela ytan och rika, typade argument.
  • Underprocesskommandon när du vill ha den token-billiga vägen: agenten kör skalkommandon, läser JSON och laddar aldrig något manifest alls. Det är mönstret som de medföljande Claude-skillsen använder.

Båda når samma API, debiterar samma credits och skriver till samma bibliotek, så ingenting blir kvar på ena sidan.

Saker som är värda att skripta

  • En veckovis konkurrentgenomgång. hermoso competitors in i hermoso ads, jämför mot förra veckan, och du har en löpande rapport över vad din marknad började och slutade köra.
  • Batchkreativ för en katalog. Loopa över SKU:er, rendera en förankrad annons per produkt och samla in de returnerade URL:erna. Det är den sortens jobb som är riktigt tråkigt i ett gränssnitt.
  • En creditspärr i CI. hermoso credits --json | jq .balance, och låt pipelinen misslyckas innan ett långt batchjobb startar mot ett tomt saldo.
  • Kostnadsmedveten modellval. hermoso capabilities --json exponerar exakta kostnader per modell, så att ett skript kan välja den billigaste modellen som uppfyller briefen i stället för att hårdkoda en.

Publicering och kampanjer

Underkommandona för CLI:n täcker research och skapande. Publicering, schemaläggning och kampanjhantering på Meta, Google Ads, Microsoft Advertising, Reddit Ads, LinkedIn, Pinterest, X Ads, TikTok Ads, Snapchat Ads, ChatGPT Ads, Apple Search Ads och AppLovin Ads finns i MCP-ytan. Den nås från samma paket med hermoso mcp, från den hostade endpointen eller från webbstudion. Publiceringsmål är Facebook, Instagram, Threads, TikTok, YouTube, X, LinkedIn, Pinterest, Bluesky, Telegram och Google Business Profile.

Vad den inte gör utan att fråga

En agent med en budget är bara användbar om skadeområdet är avgränsat, så spendeauktoriteten styrs i servern och inte i en prompt. Meta-kampanjer, annonsuppsättningar och annonser skapas PAUSED utan att anroparen kan åsidosätta det. Statusbrytarna som kan aktivera riktig annonsbudget (en på varje annonsplattform, bland andra set_meta_campaign_status, set_google_ads_status, set_microsoft_ads_status, set_reddit_ads_status, set_linkedin_ads_status, set_pinterest_ads_status, set_x_ads_status och set_openai_ads_status) vägrar köra utan en uttrycklig bekräftelseflagga. Samma spärr gäller för att skapa en aktiverad Google Ads-annonsgrupp, annons eller sökord under en redan aktiverad förälder, eftersom den då visas i nästa auktion. Borttagningar kräver bekräftelse också. På genereringssidan publicerar hermoso_capabilities varje modells exakta creditkostnad innan något körs. Varje render reserverar en uppskattning och reglerar sedan till den verkliga kostnaden, så ett misslyckat anrop återbetalas i stället för att tyst debitera dig.

Arbetar du inuti en agent i stället för ett skal? Se Claude Code-marknadsföring och hela MCP- och CLI-referensen.

Vanliga frågor

Finns det ett kommandoradsverktyg för att köra annonser?

Ja. npm install -g hermoso installerar Hermoso CLI, som undersöker konkurrentannonser i Meta-, Google- och LinkedIn-biblioteken, skapar en varumärkesprofil från en webbplats, planerar och renderar färdiga bild- och videoannonser samt rapporterar credits och jobb. Varje kommando har --json-utdata för skript. Samma paket kör också hela MCP-servern med 922+ verktyg över stdio.

Hur autentiserar jag Hermoso CLI?

Kör hermoso auth login. Det öppnar en inloggning i webbläsaren via loopback (samma mönster som gh och firebase använder) och sparar den utfärdade nyckeln i ~/.hermoso/config.json med behörigheter som bara ägaren har (katalog 0700, fil 0600). För CI lagrar hermoso auth login --token <key> en nyckel icke-interaktivt, och HERMOSO_TOKEN och HERMOSO_API_BASE överskrider konfigurationen från miljön.

Kan jag skicka utdatan till jq?

Ja. Varje kommando tar --json och skriver ut ett strukturerat objekt. Det är det avsedda kontraktet, och den läsbara raden är bara en bekvämlighet. hermoso credits --json | jq .balance är en användbar CI-spärr före en lång renderbatch.

Varför använda CLI:n i stället för MCP-servern?

Tokenkostnad. En MCP-klient laddar verktygsmanifestet i kontexten, och 922+ verktyg är inte gratis. En terminalagent som kör underprocesskommandon och läser JSON bär inget manifest alls. Båda ytorna når samma API, debiterar samma credits och skriver till samma bibliotek, så du kan blanda dem.

Kan CLI:n publicera till Facebook eller hantera Meta-annonser?

Publicering, schemaläggning och kampanjhantering på Meta, Google Ads, Microsoft Advertising, Reddit Ads, LinkedIn, Pinterest, X Ads, TikTok Ads, Snapchat Ads, ChatGPT Ads, Apple Search Ads och AppLovin Ads finns i MCP-ytan i stället för i CLI-underkommandona. Du når dem från samma paket genom att köra hermoso mcp, från den hostade endpointen på https://app.hermoso.ai/mcp eller från webbstudion. Publiceringsmål är Facebook, Instagram, Threads, TikTok, YouTube, X, LinkedIn, Pinterest, Bluesky, Telegram och Google Business Profile.

Fungerar det mot en lokal server?

Ja. Sätt HERMOSO_API_BASE till din egen origin (till exempel http://localhost:3000), så riktar sig både CLI:n och MCP-servern dit. En localhost-bas kräver ingen autentiseringstoken.

Relaterat

Renders körs som serverjobb som du väntar på, och ett omförsökt inlägg är säkert även när utfallet av första försöket är okänt. Detaljerna finns i jobb och idempotens.

Konfigurerar du det i Claude Code i stället? Se Claude Code-marknadsföring.

Installera CLI:n, logga in från webbläsaren, så är din första konkurrentgenomgång ett kommando bort. Gratis konto, 250+ intjänbara gratis credits, inget kort.

Börja gratis →   Läs MCP-dokumentationen →