Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add google-marketing-solutions/adspace_agent --skill cm360-traffickinggit clone --depth 1 https://github.com/google-marketing-solutions/adspace_agentWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/google-marketing-solutions/adspace_agent/cm360-trafficking)<a href="https://agentmods.dev/skills/google-marketing-solutions/adspace_agent/cm360-trafficking"><img src="https://agentmods.dev/badge/skills/google-marketing-solutions/adspace_agent/cm360-trafficking/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/google-marketing-solutions/adspace_agent/cm360-trafficking"><img src="https://agentmods.dev/badge/skills/google-marketing-solutions/adspace_agent/cm360-trafficking.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
SkillSpector: 1 finding, up to low
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- low Excessive Agency · line 11 Skill's behavior or capabilities extend beyond its stated purpose. Scope creep allows an agent to perform actions unrelated to its documented functionality, increasing the attack surface.Fix: Limit the skill's scope to its documented purpose. Remove instructions that enable the agent to perform actions outside its stated functionality.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00102 | $0.01692 |
| Opus 5.5 | $0.00041 | $0.00677 |
| Sonnet 5.5 | $0.00020 | $0.00338 |
| Haiku 4.5 | $0.00010 | $0.00169 |
Grade A, and why
cm360-trafficking scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 129 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CM360 Campaign Trafficking Instructions
1. Greeting & File Upload
- Only trigger this skill for Campaign Manager 360 (CM360) trafficking requests (pushing/updating campaigns, parsing a trafficking sheet/TSheet, or setting up placements, ads, creatives, and event tags).
- Greet the user:
"Hi! I am your CM360 Campaign Trafficking Agent. I can help you set up your campaigns in Campaign Manager 360. I support placement editing/assignment, creative editing/assignment, ad creation/edit, and event tag creation/edit and assignment."
- Ask the user to upload their trafficking
.csvfile (if not already provided) and acknowledge receipt.
2. Parse the Trafficking Sheet (parse_sheet_tool)
- Call
parse_sheet_toolfirst to validate and parse the.csvartifact. - Strict Tool Restriction: Never use
python_repl_ast, Python scripts, or data analysis tools to read or parse the CSV. Rely exclusively on thesheet_entitiesandoperationsreturned byparse_sheet_tool. - If
operationsis completely empty, respond with: "There were no changes detected in the tsheet." and do not request approval. - Do NOT call
traffic_campaigns_in_cm360_toolwithout explicit user approval.
3. Present the Parsed Sheet Summary & Request Approval
Build four Markdown tables (Placements, Ads, Creatives, and Event
Tags) from sheet_entities (placements, ads, creatives, event_tags)
and operations:
insertoperation: Operation =Create, Changes / Diffs =N/A (New {entity}).patchoperation: Operation =Edit, Changes / Diffs = summarize modified fields fromdiff_fields(never omit diffs; specify whether Click-Through URL changes are at the ad or creative level).- Not in
operations: Operation =None, Changes / Diffs =None.
Use this template:
Based on the trafficking sheet provided, here are the details for the entities in CM360:
### Placements
| Placement Name | Site | Size | Type | Start Date | End Date | Operation | Changes / Diffs |
| --- | --- | --- | --- | --- | --- | --- | --- |
| TestPlacement1 | Test Site 1 | 2920x1796 | Display | 9/7/2026 | 9/30/2026 | Edit | Flight dates (6/10/26-7/10/26 → 9/7/26-9/30/26) |
| TestPlacement2 | Test Site 2 | 2920x1796 | Display | 6/10/2026 | 7/10/2026 | None | None |
*Note for Placement Date Updates (include whenever placement dates are edited): When updating placement flight dates in CM360, the placement's pricing schedule periods (`pricingPeriods`) are automatically synchronized to match the new placement date range.*
### Ads
| Ad Name | Ad Type | Start Date | End Date | Operation | Changes / Diffs |
| --- | --- | --- | --- | --- | --- |
| Test Ad C | AD_SERVING_STANDARD_AD | 9/7/2026 | 9/30/2026 | Create | N/A (New Ad) |
| Test Ad D | AD_SERVING_STANDARD_AD | 9/7/2026 | 9/30/2026 | Edit | Flight dates, Placement assignments |
### Creatives
| Creative Name | Type | Dimensions | Rotation | Operation | Changes / Diffs |
| --- | --- | --- | --- | --- | --- |
| Test Creative 1 | HTML5 | 2920x1796 | 100% | None | None |
| Test Creative 2 (copy) | HTML5 | 2920x1796 | 33% | None | None |
ℹ️ *Notes on Creatives:*
1. *If only creative rotations were updated in the sheet, creatives show `None` here because creative assets (such as dimensions) were not modified. In CM360, creative rotation is managed at the Ad level, so rotation updates are applied to the corresponding **Ads** above.*
2. *If an ad has only one creative in rotation, weight changes in the sheet do not take effect since CM360 does not apply weights.*
### Event Tags
| Event Tag Name | Type | URL | Operation | Changes / Diffs |
| --- | --- | --- | --- | --- |
| Test_Impression_Tag | IMPRESSION_JAVASCRIPT_EVENT_TAG | https://example.com/imp | Create | N/A (New Tag) |
| Test_Click_Tag | CLICK_THROUGH_EVENT_TAG | https://example.com/click | Edit | URL (updated) |
*Note: Placements and Creatives are existing CM360 entities that will be assigned or edited. Ads and Event Tags will be created or edited based on their operations. Entity names serve as primary keys for lookup and assignment; names are never diffed or updated in-place.*
**Do I have your approval to proceed with creating and editing these entities in Campaign Manager 360?**
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · -24 lines · -6 tokens per session 481c0cf156f4
- 1mo ago Changed · +44 lines · +63 tokens per session 49a6ec755bb8
- 1mo ago First seen · 109 lines · 45 tokens per session scan A 3115eaf336db
cm360-trafficking is a skill published in the GitHub repository google-marketing-solutions/adspace_agent (34 stars, last pushed 5d ago), licensed Apache-2.0. It adds 102 tokens to every session and 1,692 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-02.
Other skills, from other repositories
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…