setup
Skill4 starsChanged 30 days agoMITView on GitHub
Set up google-marketing-agent from zero, or fix a broken setup. Use when the user says "set up google-marketing-agent", "connect my Google Ads", "the doctor is red", "add another account", or when any tool fails with a sign-in, permission or access-level error.
191 other projects use a version of this.
Adopted by
Most recently taken up by
- hydra-db/hydradb-claude-codetheir own version, first seen Nov 8, 2026
- WALKERKILLER/Look-Tongji-Notestheir own version, first seen Nov 8, 2026
- steerlabs/opensteertheir own version, first seen Nov 8, 2026
- ansvisor/ansvisortheir own version, first seen Nov 8, 2026
- dsifry/metaswarmtheir own version, first seen Nov 8, 2026
- anombyte93/prd-taskmastertheir own version, first seen Nov 8, 2026
Used with
Projects with it also use add-voice-transcription, add-discord and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
juancruzmunozalbeloSkilladd-voice-transcription
Add voice message transcription to NanoClaw using OpenAI's Whisper API. Automatically transcribes WhatsApp voice notes so the agent can read and respond to them.
Also in 5 projects that use this
MicrosoftSkilladd-discord
Add Discord bot channel integration via Chat SDK.
Also in 11 projects that use this
MicrosoftSkilladd-slack
Add Slack channel integration via Chat SDK.
Also in 11 projects that use this
juancruzmunozalbeloSkilladd-telegram-swarm
Add Agent Swarm (Teams) support to Telegram. Each subagent gets its own bot identity in the group. Requires Telegram channel to be set up first (use /add-telegram). Triggers on "agent swarm", "agent teams telegram", "telegram swarm", "bot pool".
Also in 7 projects that use this
- +8 more from microsoft
Other versions191 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 191
- anthropics/knowledge-work-plugins★ 35ksame name
- garrytan/gbrain★ 32ksame name
- gavrielc/nanoclaw★ 31ksame name
- nanocoai/nanoclaw★ 31ksame name
- qwibitai/nanoclaw★ 31ksame name
- Q00/ouroboros★ 6.3ksame name
- pytorch/executorch★ 5.2ksame name
- agenticnotetaking/arscontexta★ 3.5ksame name
- aws/agent-toolkit-for-aws★ 3.4ksame name
- spotify/portal-ai-plugins★ 2.8ksame name
181 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository13 other files it gives its agents.
- ads-auditSkill
- campaign-architectSkill
- consent-auditSkill
- demand-gen-launchSkill
- event-auditSkill
- gtm-buildSkill
- monthly-reportSkill
- performance-insightsSkill
- pre-launch-checkSkill
- search-launchSkill
- tracking-auditSkill
- tracking-planSkill
- weekly-checkSkill
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 4 are distinctive, and 8 are very specific to this project.
0
Common
Most of the 170 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 23
Call setup_doctor. If every line is ✓, say so and stop.
- Distinctive: line 24
Read the first ✗ line and its fix.
- Distinctive: line 30
Create a Google Cloud project (console.cloud.google.com).
- Very specific: line 38
Call guide("access") if they ask about developer tokens or access levels.
- Very specific: line 42
Account access: Call accounts_list. If the account is listed "via manager", the profile needs that manager as loginCustomerId: npx …
- Distinctive: line 45
If it is not listed at all, the signed-in Google user needs access to it in Google Ads.
- Very specific: line 47
Search Console Full or Restricted user.
- Very specific: line 49
After each fix, call setup_doctor again and report only what changed.
- Very specific: line 50
When everything they need is green, call account_profile and summarise the profile.
- Very specific: line 61
Never ask the user to paste a client secret, refresh token or service-account key into the chat.
- Very specific: line 63
Never edit ~/.config/google-marketing-agent/*.json by hand on their behalf.
- Distinctive: line 64
Never turn on writes for them.
“Common” is measured: kept by at least 6 in 10 of the 170 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Setup
Walk the user from nothing to a green setup_doctor, one step at a time. Each step ends with a check; move on only
when that step is green.
When to use
- First run: no profiles, or tools answer "No accounts configured" / "Not signed in".
- A tool failed with
invalid_grant,USER_PERMISSION_DENIED,PERMISSION_DENIED, a disabled API, or test-level access. - The user wants to add another Google Ads account or link GA4 / Search Console / Tag Manager.
Inputs
None. Everything comes from setup_doctor and the user's answers.
Steps
- Call
setup_doctor. If every line is ✓, say so and stop. - Read the first ✗ line and its fix. Handle the earliest broken stage first, in this order:
- Signed out / no credentials → step 3.
- Google Ads access level (only test accounts visible, or "Test level") → step 4.
- Account not readable (
USER_PERMISSION_DENIED, wrong manager) → step 5. - GA4 / Search Console / Tag Manager lines → step 6.
Cloud project and OAuth client. Explain the four one-time steps, wait for "done" after each:
- Create a Google Cloud project (console.cloud.google.com).
- Enable the Google Ads API, plus Google Analytics Data API, Google Analytics Admin API, Google Search Console API and Tag Manager API for the products they use.
- OAuth consent screen: Internal if they are in a Google Workspace organisation; otherwise External and set it to In production. Testing mode makes the sign-in expire after 7 days.
- Credentials → Create credentials → OAuth client ID → Desktop app.
Then tell them to run
npx google-marketing-agent initin their own terminal and pick their accounts. Callguide("access")if they ask about developer tokens or access levels.- Access level. The Cloud project that owns the OAuth client starts at Test level. Tell them: Cloud Console →
APIs & Services → Google Ads API → Overview → apply for Explorer (usually approved within minutes). The OAuth
client must be in that same project. Use
guide("access")for the levels table. - Account access. Call
accounts_list. If the account is listed "via manager", the profile needs that manager asloginCustomerId:npx google-marketing-agent accounts set <alias> loginCustomerId <manager id>. If it is not listed at all, the signed-in Google user needs access to it in Google Ads. - Other products. For each ✗ line, give the exact role from the fix text (GA4 Viewer, Editor for key events;
Search Console Full or Restricted user; Tag Manager Read/Edit/Publish) and the profile field to set
(
ga4PropertyIdnumeric ID,gscSiteUrlexactly as Search Console lists it,gtmContainerIdGTM-XXXX). - After each fix, call
setup_doctoragain and report only what changed. - When everything they need is green, call
account_profileand summarise the profile. Mention that profiles are read-only; changes neednpx google-marketing-agent accounts set <alias> writes trueafter reading the safety guide, then a restart of their MCP client.
Output
A short checklist: each stage ✓ or ✗ with the one next action. End with either "Setup complete" or exactly what is still missing and who has to grant it (the user, their Google Ads admin, their Workspace admin).
Never
- Never ask the user to paste a client secret, refresh token or service-account key into the chat. Secrets go into
initin their own terminal only. - Never edit
~/.config/google-marketing-agent/*.jsonby hand on their behalf; use the CLI commands above. - Never turn on writes for them. Explain how, and let them decide.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

