← AdAgntCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to AdAgnt
Snapshot Sep 30, 2026 · 23:11 UTC · version 1.0.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "adagnt-google-ads",
"description": "Google Ads through AdAgnt — Search, Performance Max, Demand Gen and YouTube campaigns, keyword and search-term work, extensions, bidding and wasted-spend analysis. Use for any Google Ads task. 50 tools.",
"included_files": [],
"skill_md_contents": "---\nname: adagnt-google-ads\ndescription: Google Ads through AdAgnt — Search, Performance Max, Demand Gen and YouTube campaigns, keyword and search-term work, extensions, bidding and wasted-spend analysis. Use for any Google Ads task. 50 tools.\n---\n\n# Google Ads\n\n50 tools: 19 read, 31 write. The deepest surface AdAgnt has.\n\n## Start here\n\n`list_campaigns` for the account, `get_campaign_structure` for one campaign's\nshape, `get_campaign_performance` for metrics. All read-only.\n\n`select_google_campaign_type` helps choose a campaign type when the user is\nunsure — cheaper than building the wrong one.\n\n## Building a campaign\n\nResearch first: **`research_keywords`** returns real monthly volumes,\ncompetition and top-of-page bid ranges. Never invent keywords.\n\n| Type | Tool | Follow-ups |\n|---|---|---|\n| Search | `create_search_campaign` | `add_keywords`, `add_negative_keywords`, `create_ad` |\n| Performance Max | `create_pmax_campaign` | `add_pmax_search_themes`, `add_pmax_audience_signal` |\n| Demand Gen | `create_demandgen_campaign` | `add_demandgen_ad_group` |\n| YouTube | `create_youtube_campaign` | `validate_video` first |\n\n### The limit that rejects calls\n\n`create_search_campaign` requires **exactly 15 headlines, exactly 4\ndescriptions, and at least 5 keywords** per ad group. Fewer returns\n`INVALID_ARGS` and nothing is created. Write the full set yourself; do not ask\nthe user for fifteen headlines.\n\n(`create_ad` and `update_ad_headlines` are looser: 3–15 headlines.)\n\n## Extensions\n\n`add_sitelinks`, `add_callout_extensions`, `add_structured_snippets`;\n`list_campaign_extensions` to see what exists. Cheap wins on click-through that\nmost accounts neglect.\n\n## Optimising\n\n- `analyze_search_terms` — what people actually typed. The richest source of\n negative keywords.\n- `analyze_wasted_spend` — spend returning nothing, with opportunity cost\n- `optimize_budget_allocation` — proposals, never applied silently\n- `explain_performance_anomaly` — why a metric moved\n- `get_benchmark_context` — how the account compares to its industry\n\nBidding: `update_bid_strategy`. Keywords: `update_keyword`, `remove_keywords`.\n\n## Business context\n\n`infer_business_profile` from a website, `save_business_profile`, and\n`get_business_profile` to reuse it. Grounding campaigns in the real business\nbeats generic copy.\n\n## Writes\n\nEvery create/update/pause/remove here spends or changes money. Follow\n`adagnt-agent`: propose every field, wait, then create.\n\n**Google campaigns are created ENABLED and start spending.** Call\n`pause_campaign` immediately after creating, in the same turn, unless the user\nasked for it to go live — then read back the status with `list_campaigns` or\n`get_campaign_structure` before telling them it is paused.\n"
}SHA-256: a3a6e63f87636030c72841428b722d6a9dad699c6d6af56c48fab6050788d1e4