The ads skill output was missing structural enforcement for Google RSA
platform limits, causing AI agents to generate non-compliant ads:
- variable headline/description counts (not exactly 15/4)
- character lengths exceeded (>30 chars headlines, >90 chars descriptions)
- missing negative keyword lists
- missing ad group structure labels
This commit adds a 'Google RSA Output Spec' section that:
- Enforces 15 headlines (≤30 chars) / 4 descriptions (≤90 chars) per RSA
- Requires explicit ad group structure, sitelinks (≥4), callouts (≥4)
- Requires labeled negative keyword list (≥8 entries)
- Specifies mandatory output ORDER (Negatives + sitelinks before RSAs)
so they survive output truncation in long generations
- Adds CFM (Brazilian medical regulation) forbidden-term list for
pt-BR medical practice contexts
- Adds a pre-response self-check checklist
Validated on a marketing-eval harness across 3 medical sites: scores
moved from 47/47/20 (all critical-fail) to 100/100/87 (all critical-pass)
after applying the spec.
Co-authored-by: Erion De Andrade <231011322+erionjuniordeandrade-a11y@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Patch release rolling up two content updates that just landed:
- ai-seo (#313): aligned with Google's official AI features optimization
guide — Google's stance, query fan-out, agentic experiences (UCP),
what-not-to-do, Search Console expectations; reframed
llms.txt/pricing.md/schema as "not required by Google but helpful for
non-Google AI engines"; moved content-type tactics to
references/content-types.md
- image (#311): refreshed model lineup to current May 2026 releases —
Nano Banana family, Flux Pro 1.1 + Kontext, Ideogram 3.0, ChatGPT
Images 2.0, Midjourney v7, Recraft V3, SD 3.5 / SDXL
- video (#311): refreshed model lineup — Sora 2 promoted from
limited-availability caveat, Kling 2.5/3.0, added Seedance, Hailuo /
MiniMax, Hunyuan Video / Wan 2, Pika 2.x; new "Quick picks" guide
No new skills, no breaking changes. Only the three affected SKILL.md
files bumped to 2.0.1; the other 37 stay at 2.0.0.
- marketplace.json: 2.0.0 → 2.0.1
- VERSIONS.md: ai-seo, image, video rows bumped; 2.0.1 changelog entry
added
- skills/{ai-seo,image,video}/SKILL.md: metadata.version → 2.0.1
All 40 skills pass validation. sync-skills.js still no-op.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Source: https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
The skill was framed as "optimize for AI systems," which mis-states Google's
explicit position: AI Overviews and AI Mode are powered by core Search ranking,
so SEO best practices ARE the optimization strategy. Don't write separate
content "for AI."
The structural patterns the skill recommends (FAQ schema, comparison tables,
40-60 word answer blocks, llms.txt, /pricing.md) still help non-Google AI
engines (ChatGPT, Claude, Perplexity, Copilot) materially. The skill now
calls out the platform split explicitly rather than implying universal
benefit.
Major changes:
- New section "Google's Official Stance vs. Multi-Platform Reality":
Frames Google's "don't optimize for AI" position alongside the reality that
other AI engines reward extractable structure. Quotes Google's own
phrasing.
- New section "Query Fan-Out (Google AI Search)":
Explains Google's documented behavior of generating concurrent related
queries. Reframes content strategy from per-query targeting to topical
cluster coverage.
- New section "Agentic Experiences":
Browser agents accessing sites via visual rendering, DOM inspection, and
accessibility tree. Semantic HTML, JS-free meaningful render, clean a11y
tree. Mentions the emerging Universal Commerce Protocol (UCP).
- New section "What NOT to Do":
Explicit Google guidance: don't write for AI, don't chunk content for AI,
don't scale variations (scaled content abuse spam policy), don't pursue
inauthentic mentions, don't block AI crawlers if you want citation.
- Machine-Readable Files section reframed:
Now opens with Google's stance ("not required") + the reason to include
them anyway (non-Google AI engines).
- Schema markup note reframed:
Notes Google's position that structured data is "not required for
generative AI search" but still recommended.
- Search Console expectations added:
Sets correct expectation that no AI-specific Search Console reporting
exists; standard SEO metrics + third-party tools are the measurement
options.
- Moved "AI SEO for Different Content Types" to references/content-types.md:
Kept SKILL.md under 500 lines. Added a local-business/ecom subsection
(Merchant Center + Google Business Profile + Business Agent) per
Google's emphasis.
All 40 skills still pass validation.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Video (skills/video/SKILL.md):
- Sora 2 promoted from "limited availability" caveat to a first-class model
- Kling updated to 2.5/3.0 from Kuaishou
- Added Seedance (ByteDance) as a fast, low-cost batch option
- Added Hailuo / MiniMax for character-consistency use case
- Pika updated to 2.x
- Added Hunyuan Video / Wan 2 (open-weight, self-hosted)
- New "Quick picks" guide for cinematic / batch / character-consistent /
self-hosted / storyboard / image-to-video use cases
- Trigger phrases updated to include Sora, Seedance, Hailuo, MiniMax,
Hunyuan, Wan
Image (skills/image/SKILL.md):
- Gemini Image labelled with Nano Banana / Nano Banana Pro family names
- Flux entry annotates Pro 1.1, Kontext, Dev, Schnell variants (Kontext for
in-image editing)
- Ideogram bumped to 3.0
- GPT Image entry renamed to "ChatGPT Images 2.0 / GPT Image" reflecting the
newer family
- Midjourney bumped to v7
- Added Recraft V3 for vector + brand illustration use case
- Stable Diffusion 3.5 / SDXL specifics noted
- Updated "When to Use Which" decision tree to match
- Trigger phrases updated to include Flux Kontext, ChatGPT Images, Nano
Banana, Recraft
All 40 skills still pass validation.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
* feat: v2.0 skill renames and CRO consolidation
BREAKING CHANGE: Users must reinstall skills after this update.
## Skill Renames (16)
- ab-test-setup → ab-testing
- analytics-tracking → analytics
- aso-audit → aso
- competitor-alternatives → competitors
- email-sequence → emails
- free-tool-strategy → free-tools
- launch-strategy → launch
- onboarding-cro → onboarding
- paywall-upgrade-cro → paywalls
- popup-cro → popups
- pricing-strategy → pricing
- product-marketing-context → product-marketing
- referral-program → referrals
- schema-markup → schema
- signup-flow-cro → signup
- social-content → social
## Consolidations (1)
- page-cro + form-cro → cro (form content in references/form.md)
## Why 2.0?
- Shorter, cleaner skill names
- Consistent naming (no -strategy, -setup, -cro suffixes)
- All cross-references updated across 100+ files
Total skills: 40
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(v2.0): update evals for renamed skills, fix validate script, clear warnings
- Update 32 evals.json files to reference new skill names (page-cro → cro,
product-marketing-context → product-marketing, etc.) — these were missed
in the initial v2.0 rename pass since only SKILL.md and marketplace.json
were updated.
- Fix validate-skills.sh: replace GNU-only `head -n -1` with portable awk
so frontmatter extraction works on macOS.
- Move Copy Editing Checklist (56 lines) to references/checklist.md to
bring copy-editing SKILL.md under the 500-line limit (508 → 457).
- Add "see X" pointers to marketing-psychology description for skill
discovery (cro, pricing, copywriting).
- Update skill-request.yml issue template placeholder (page-cro → cro).
All 40 skills now pass validation with zero warnings.
* fix(v2.0): add evals for 8 missing skills, strip stale frontmatter from cro/form.md
Adds 48 new eval cases (6 per skill) for skills that previously had no evals:
aso, co-marketing, community-marketing, competitor-profiling, directory-submissions,
image, lead-magnets, video. All 40 skills now have eval coverage (251 total cases).
Strips leftover frontmatter from skills/cro/references/form.md — it was inherited
from the old form-cro SKILL.md before consolidation. Reference files don't need
frontmatter.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix(v2.0): rename paid-ads → ads
One more v2.0 simplification — drops the redundant 'paid-' qualifier. Updates
the skill directory, SKILL.md frontmatter, evals.json, README skill table, the
v2.0 rename table in VERSIONS.md (now 17 renames), and all cross-references in
related skills (ad-creative, aso, competitor-profiling, customer-research,
lead-magnets, marketing-ideas) plus the tools/integrations guides.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix(v2.0): bump SKILL.md frontmatter version to 2.0.0 for all 40 skills
VERSIONS.md was already updated to 2.0.0 but the metadata.version field inside
each SKILL.md was still on 1.x. That mismatch would have caused the update-check
flow to perpetually report 'update available' since it compares VERSIONS.md
against local SKILL.md metadata versions.
Caught by codex review (P1).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix(v2.0): add legacy product-marketing-context.md filename fallback
Before this fix, users upgrading from v1.x who had a `product-marketing-context.md`
file would lose automatic context loading — every skill only checked the new
`product-marketing.md` filename. Now all 40 skills also accept the legacy
filename (in either `.agents/` or `.claude/`), and the README migration command
covers both legacy and current filenames.
Caught by codex review (P1 + P2).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix(v2.0): re-sort README skills table alphabetically, fix ads box width
The skills table had a few entries out of alphabetical order from the renames
(co-marketing was after cold-email, ads was at the renamed position).
Re-sorted alphabetically per sync-skills.js. Also padded the 'ads' cell in the
ASCII flow diagram to keep the box width consistent.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix(v2.0): document folder cleanup on upgrade, stop sync-skills from re-adding skills array
README upgrade guide now includes:
- A clear cleanup step for stale v1.x skill folders (renamed + consolidated) so
users don't end up with both old and new folders side-by-side after upgrading
- The full v1 to v2 rename map for reference
- Existing product-marketing-context.md migration steps (preserved)
sync-skills.js no longer (re-)introduces a `skills` array on marketplace.json --
Claude Code's plugin schema discovers skills via the `skills/` directory, and the
explicit array was failing validation. The script now refreshes the description
count and strips the stale array if present.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Add 6 new tiers (8-13) covering profile & content platforms, local business
directories, forums & communities, press release sites, social bookmarking,
and niche verticals. Also expand existing tiers 2, 3, and 5 with new entries.
Codex-verified: removed 5 dead/expired domains (nancheng.fun, startuplister.com,
designernews.co, sitewebdirectory.com, atoalinks.com), corrected GPTForge DR
from 88 to ~30 (domain created 2025), fixed sitepromotondirectory typo, and
normalized cross-file naming inconsistencies.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat: add image skill for AI image generation and marketing visuals
Covers AI image generation (Gemini, Flux, Ideogram, DALL-E, Midjourney),
design tools (Canva, Figma), marketing workflows (blog heroes, social
graphics, product mockups, profile/listing banners, brand assets), image
optimization, and OG/social preview images.
Includes prompting reference guide with model-specific tips.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: apply accuracy fixes from Codex review
- OpenAI: DALL-E 3 → GPT Image family (DALL-E 3 deprecated)
- Gemini: use official naming, keep Nano Banana as context
- Ideogram: remove ungrounded ~90% accuracy claim
- All pricing: replace hard numbers with doc links
- LinkedIn company cover: note recommended 4200x700
- WebP/AVIF: adjust browser support to ~96%/~94%
- Flux: remove specific reference image count (varies by variant)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat: add video skill for AI video production
New skill covering programmatic video (Remotion, Hyperframes), AI video
generation (Veo, Runway, Kling), AI avatars (HeyGen, Synthesia), and
editing/repurposing workflows. Includes AI video prompting reference.
New tool integrations: HeyGen (MCP-enabled), Hyperframes (open source).
Updated tools registry with Video category expansion.
Total skills: 39
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: apply accuracy fixes from Codex review
- Hyperframes: Node.js requirement 18+ → 22+ (confirmed via npm)
- Veo 3: soften 4K claim to "Up to 1080p (4K varies)"
- Sora: replace shutdown claim with availability caveat
- HeyGen: remove dollar amounts, link to pricing page
- Remotion: soften license wording
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Add TikTok/Reels/Shorts frameworks: 3-second rule, video structures,
caption best practices, content ideas by business type. Detailed hook
library, scripting template, audio/visual strategy in reference file.
Inspired by #200 (vendor-neutral parts only).
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Add 4 new skills to version table (aso-audit, community-marketing,
customer-research, directory-submissions). Bump paid-ads to 1.2.0.
Add v1.8.0 changelog entry.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cross-platform pixel setup guide covering Google Ads, Meta, LinkedIn,
and TikTok — installation, event configuration, server-side tracking,
and validation. Covers the marketer-level setup that was missing between
the high-level checklists and deep code-level implementation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The unquoted description contained "Trigger phrases:" which YAML parsed
as a nested mapping, causing the skills CLI to silently drop the skill
during discovery. Wrap the value in double quotes and escape inner
quotes.
Add comprehensive internationalization coverage to the SEO audit skill,
backed by 40+ sources from Google Search Central, John Mueller, and
authoritative SEO publications.
New section covers:
- Hreflang implementation (placement, reciprocal refs, x-default, scale)
- Canonicalization for multilingual sites (self-referencing, conflict rules)
- International sitemaps (structure, size limits, Next.js caveats)
- Locale URL structure (subdirectories vs ccTLDs, content negotiation)
- Content quality across locales (AI translation stance, thin pages, HCU)
Also adds:
- Multilingual/Multi-Regional site type to Common Issues
- references/international-seo.md with evidence and source URLs
- Version bump to 1.2.0
* feat: add customer-research skill (#186)
* feat: add customer-research skill (#185)
Adds a new skill for conducting and synthesizing customer research —
covering analysis of existing assets (transcripts, surveys, support
tickets, NPS) and digital watering hole research (Reddit, G2, forums,
communities, review sites). Includes persona generation framework,
JTBD extraction, VOC quote banking, and competitive intel from reviews.
Also adds a detailed source-guides reference with per-platform playbooks
(Reddit operators, G2 review tiers, LinkedIn job posting mining, etc.)
and 10 evals covering the main trigger scenarios.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix: address Codex review of customer-research skill
- Fix evals.json schema to match repo convention (skill_name wrapper,
integer IDs, expected_output, files fields)
- Add product-marketing-context.md assertion to all evals
- Add 2 new evals: B2C drop-off scenario and zero-research bootstrap
- Collapse 'Where to Look' in SKILL.md to a decision table; detail
lives in source-guides.md
- Add Research Quality Guardrails section (confidence labels,
recency window, sample bias, minimum viable sample)
- Add Related Skills section cross-linking 7 downstream skills
- Expand source-guides.md with full B2C section (app stores,
TikTok/Instagram, consumer Reddit, Discord)
- Add Source Reliability and Confidence Scoring reference guide
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix: correct alphabetical ordering of customer-research in manifest and README
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: add customer-research to skills relationship diagram
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: move customer-research into Strategy column in diagram
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: Resend CLI docs + Firehose integration (#188)
* feat: add Resend CLI docs and Firehose integration
- resend.md: update CLI availability (now official), add CLI install,
setup, and common commands section
- firehose.md: new integration guide for real-time web content streaming
API — query syntax, stream setup, marketing use cases (brand monitoring,
competitive intel, lead triggers, PR/link building)
- REGISTRY.md: add firehose under Competitive Intelligence
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: document Claude Code dynamic content injection pattern
Add Claude Code-specific enhancement section to AGENTS.md explaining
the !`command` syntax for injecting shell output into skills at
invocation time. Marked as Claude Code-only to preserve cross-agent
compatibility of SKILL.md files.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* Revert "docs: document Claude Code dynamic content injection pattern"
This reverts commit 8e1ce7b363.
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: document Claude Code dynamic content injection pattern (#189)
Add Claude Code-specific enhancement section to AGENTS.md explaining
the !`command` syntax for injecting shell output into skills at
invocation time. Marked as Claude Code-only to preserve cross-agent
compatibility of SKILL.md files.
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: add Introw PRM as partner ecosystem integration (#193)
Great contribution — clean integration guide with solid MCP tool coverage, and the cross-references into referral-program, revops, launch-strategy, and sales-enablement are well-placed. Thanks!
* feat: add Nitrosend integration for AI-native email sequencing
Adds Nitrosend as a tool option for teams building email sequences via
AI agents — no dashboard required, full MCP control.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Tibo <72124096+CoopahG@users.noreply.github.com>
* feat: add lead-magnets skill
Covers strategy for creating, gating, promoting, and measuring
downloadable/content-based lead magnets (ebooks, checklists, cheat
sheets, templates, swipe files, mini-courses, quizzes, webinars).
Includes format-guide and benchmarks reference files. Adds cross-
references in free-tool-strategy, email-sequence, and popup-cro.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix: align H1 title with skill name
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: add headless CMS reference and integration guides
Add CMS selection guide, content modeling patterns, and editorial
workflow reference for marketers. Add integration guides for Sanity
(GROQ API), Contentful (CDA/CMA), and Strapi (v5 REST). Register
all three in REGISTRY.md and link from content-strategy skill.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: address review feedback on headless CMS guides
- Use {curly_brace} placeholder convention for Strapi relation example
- Add note that Contentful CMA create uses PUT with client-generated ID
- Add URL-encoding note for Sanity GROQ query parameter
- Switch Sanity mutation example from createOrReplace to create (no _id needed)
- Add Content-Type header to Contentful update entry example
- Fix outdated "Assembly" product name to "Studio" for Contentful
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
- marketing-psychology eval 4: BJ Fogg assertion did not match expected_output
which lists Goal-Gradient Effect. Fixed.
- sales-enablement eval 2: all 6 categories assertion contradicted expected_output
which only categorizes the 3 given objections. Fixed.
- ad-creative eval 5: TikTok hard limit corrected to recommended (80 chars
recommended, 100 max) per SKILL.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- sales-enablement: "ROI calculator" → "deal-specific ROI analysis" to avoid
conflict with free-tool-strategy which also claims "ROI calculator"
- sales-enablement: clarified scope boundary to competitor-alternatives for
battle cards (competitor-alternatives owns battle card creation)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- sales-enablement: "Never demo without discovery" → "Demo after discovery, not before"
- site-architecture: "No exceptions" → explains why (backlink equity, broken pages)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes 5 issues identified by independent Codex review:
- product-marketing-context: match auto-draft workflow, section flexibility
- marketing-psychology: replace phantom models with actual SKILL.md models
- ad-creative: correct RSA pinning guidance to match skill
- free-tool-strategy: boundary test now defers to related skill (page-cro)
- paywall-upgrade-cro: boundary test references only related skills
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Each skill now has 5-8 evals covering:
- Core framework usage with realistic prompts
- Casual trigger phrase variants
- Sub-type and section-specific coverage
- Boundary tests (skill deferral to related skills)
- Structured assertions for grading
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Changes per skill:
page-cro (5 -> 7 evals):
- Added structured assertions array to all evals
- Added Blog Post CRO eval (was missing)
- Added boundary eval: signup form should defer to signup-flow-cro
- Replaced feature page A/B test eval with fuller feature page eval
copywriting (5 -> 7 evals):
- Added structured assertions array to all evals
- Added About Page eval with voice/tone adaptation test
- Added boundary eval: email sequence should defer to email-sequence
- Added Quick Quality Check eval (buzzword/jargon/exclamation detection)
- Added meta content assertion to homepage eval
seo-audit (5 -> 8 evals):
- Added structured assertions array to all evals
- Added Local Business eval (NAP, GBP, location pages)
- Added Core Web Vitals / site speed eval
- Added boundary eval: FAQ schema should defer to schema-markup
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>