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 boringmarketer/kimi-first --skill meta-adsgit clone --depth 1 https://github.com/boringmarketer/kimi-firstWrote 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/boringmarketer/kimi-first/meta-ads)<a href="https://agentmods.dev/skills/boringmarketer/kimi-first/meta-ads"><img src="https://agentmods.dev/badge/skills/boringmarketer/kimi-first/meta-ads/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/boringmarketer/kimi-first/meta-ads"><img src="https://agentmods.dev/badge/skills/boringmarketer/kimi-first/meta-ads.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00089 | $0.02828 |
| Opus 5.5 | $0.00036 | $0.01131 |
| Sonnet 5.5 | $0.00018 | $0.00566 |
| Haiku 4.5 | $0.00009 | $0.00283 |
Grade A, and why
meta-ads scanned grade A with 1 finding 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
One `curl` then proves the whole server path in isolation. This is the only How it starts
The opening of the file, as written. The whole thing — 271 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Meta Ads — launch and verification
Everything here was learned by getting it wrong in production first. The API rejections are real rejections, the permission chain is the one that actually unblocks, and the verification section exists because measuring the wrong thing produced three confidently-wrong conclusions in a single session.
1. Verification comes first, because it is where the damage happens
Read this before believing any test result.
Three separate false negatives in one launch. Each looked like a real bug. Each was the instrument, not the system.
| Trap | What happened | What to use instead |
|---|---|---|
| Testing on localhost | Verified the pixel and an embed on localhost. Both were blocked in production by a CSP that localhost does not have. |
Always verify against the deployed URL. A localhost pass proves nothing about production headers. |
performance.getEntriesByType('resource') |
Concluded "the Lead never fires" because no beacon appeared. fbevents uses navigator.sendBeacon when an eventID is present, and sendBeacon never appears in resource timing. |
Meta's Test Events tool. It is Meta's own instrumentation and it ends the argument. |
| "Received From: Browser" in Test Events | Concluded the server-side CAPI was broken because no server rows appeared. Test Events only shows server events if the server sends a test_event_code. |
Have the server return its own send result (see §6). Absence of display ≠ absence of delivery. |
The pattern: absence of evidence was read as evidence of absence, from an instrument that structurally could not observe the thing being measured. Before concluding something is broken, ask what the instrument can actually see.
Confounded variables. One "isolation test" removed two variables at once and the wrong one got the blame. Change one thing.
2. The permission chain (the part that actually blocks you)
To create ads via API you need four separate grants. Missing any one gives a different, unhelpful error.
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 First seen · 271 lines · 89 tokens per session scan A 8cb6450c144e
meta-ads is a skill published in the GitHub repository boringmarketer/kimi-first (49 stars, last pushed 1mo ago), licensed MIT. It adds 89 tokens to every session and 2,828 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-04.
Other skills, from other repositories
deepseek-and-destroy
Continuously execute a complex multi-phase implementation plan through configurable worker-agent loops until the plan is complete or a genuinely human-level blocker is reached. Uses fresh implementation and review contexts, reviewer-led repair, fresh re-review, durable multi-orchestrator state, and main-orchestrator…
systematic-bug-hunting
Use when actually hunting for exploitable bugs at the bench inside an already-authorized engagement — reading a target, running scanners/fuzzers, sitting on a pile of odd-but-inert observations, tempted to report something "probably exploitable", or about to conclude "nothing found". Applies to every target class…
systematic-attacking
Use for ALL authorized offensive-security / bug-bounty work — the single method to find, chain, prove, dedup, and package the highest-value (High/Critical) findings across every domain (web/SaaS, smart-contract/DeFi, infra/cloud, LLM/AI, mobile, binary/firmware). Enforces two iron laws before any offensive action or…
defi-invariant-check
Use when the audit target is a DeFi protocol — AMM, lending market, yield vault, stablecoin, or perps — and you must author the economic properties generic campaigns miss, such as token-conservation, constant-product k, share accounting, collateralization, and oracle-deviation invariants, then falsify them.
vulnhunter-solana
Use when reviewing Solana program code for the account-model bug classes — unchecked account owner, absent signer, discriminator confusion, caller-controlled CPI seeds, PDA-derivation collision, SPL arithmetic overflow, close-and-reinitialize revival, and duplicate-account aliasing — the pattern census that stands in…
rule8-truth-gate
Use at S4 before an investigation, article, campaign, narration, or screen production with external-world assertions may advance: require returned source bundles, enforce the requested recency interval for every decision-critical premise, reject unmapped items, and emit the mandated PASS/needstool truth record.