/ads setup
Create the client, account, KPI, privacy, and guardrail profile
/ads setupInstalled as a plugin? The same command is namespaced: /claude-ads:ads setup
What it does
Guided onboarding that builds the client, brand, account, data-source, privacy, and mutation-guardrail profile every other command reads. Built for agencies, consultants, and in-house teams preparing a new advertising project or connecting a new client safely.
Use it to
- Onboard a new client or brand before the first audit
- Declare KPIs, conversion taxonomy, and unit economics up front
- Record which API credentials exist without ever storing their values
- Connect authorized exports or read adapters as data sources
- Set mutation authority, approvers, budget ceilings, and a rollback owner
- Install Claude Ads safely when someone suggests a curl-pipe-bash script
How it works
Read the operating contract
Loads the main ads contract so the profile matches the rest of the system.
Collect business context
Captures model, offer, geography, regulated categories, objectives, conversion taxonomy, economics, platforms, and account IDs.
Record data sources
Notes the data-source type and whether required credentials are present, without storing values, cookies, tokens, or raw exports.
Create the data-lifecycle contract
Declares classification, retention, deletion deadlines, at-rest and in-transit controls, access roles, and an incident owner, then validates it.
Declare mutation guardrails
Records mutation authority, approvers, budget and policy ceilings, and the rollback owner.
Validate and persist
Validates the full profile and writes it atomically beneath the project's Claude Ads state directory.
Reads & produces
What it reads
- Business model, offer, geography, and regulated categories
- Objective, conversion taxonomy, and economics
- Active platforms, account IDs, and date and time conventions
- Data-source type and credential presence, never credential values
- Reporting audience and privacy classification
What it produces
- A validated setup and brand profile written atomically to the project state directory
- A data-lifecycle contract covering classification, retention, deletion, and access ownership
- A guardrail declaration: mutation authority, approvers, ceilings, rollback owner
- A credential presence record that stores non-secret references only
Guardrails
What /ads setup will and will not do, by contract. These boundaries are enforced in the skill itself, not left to judgment.
- Never stores API keys, tokens, cookies, or passwords: it records presence plus a non-secret reference, and values stay in environment variables, an OS keychain, or an approved secret manager.
- Refuses remote pipe-to-shell installation, including curl piped to bash. It requires the host-native plugin flow, a local checkout, or a tagged archive with a verified SHA-256 checksum.
- A setup profile authorizes no live account write. Mutations remain gated behind their own approval flow.
- Websites and uploaded material are treated as untrusted data, and observed facts, operator decisions, and provisional assumptions are labeled separately.
- The data-lifecycle contract is an operational contract, not legal advice or a claim of regulatory compliance.
Questions
Does setup store my API tokens?
No. It records that a credential is configured and where it lives, for example an environment variable name. Secret values are never printed, logged, or written into profiles or artifacts.
Can setup change anything in my ad accounts?
No. Setup is read-only and the profile it produces authorizes no live write. Account changes require the separate draft-and-approve mutation gate used by launch and optimize.
What if I only have CSV exports, not API access?
That works. Setup records the data-source type, and audits, plans, and monitoring run from authorized exports as well as authenticated reads.