120 marketing skills as an AI marketing staff — plugin, portable skills, or an 8-bot team across 7 disciplines (narrative, SEO/GEO, social, email, paid, influencer, launch) on one contract, with 8...
概要
A library of Claude Skills and slash commands that turns a chat agent into a marketing operator. Seven disciplines and a shared protocol layer, at a glance: /aaron-marketing:auto routes any natural-language goal across all of it. Skills and commands are ; small Bash/Python-stdlib runtimes provide hooks, validation, scoring, registry events, connectors, and CI checks (no pip, no build step). ; connectors only automate retrieval or an explicitly approved mutation. The authoritative typed topology is references/system-catalog.json; see the generated system architecture for the readable four-layer map, all 120 paths, registry owners, auditor sinks, and distribution profiles. The pre-merge standalone repos are now pointing here — seo-geo-claude-skills (final 20-skill line preserved at tag v9.9.12) and influencer-marketing-agent-skills (final IMPACT line at tag standalone-final). Sibling-repo policy: docs/repo-family.md.
README
A library of Claude Skills and slash commands that turns a chat agent into a marketing operator. Seven disciplines and a shared protocol layer, at a glance:
| Layer | Skills | Lifecycle (phase directories) | Framework → gate | Entrypoint |
|---|---|---|---|---|
| Narrative | 16 | trace → architect → land → evaluate | TALE truth / system / effectiveness profiles | /aaron-marketing:narrative |
| SEO/GEO | 16 | survey → implement → tune → evaluate | CORE-EEAT → content-quality-auditor · CITE → domain-authority-auditor |
/aaron-marketing:seo-geo |
| Social | 16 | explore → craft → host → observe | ECHO asset / program-maturity profiles | /aaron-marketing:social |
| 16 | setup → engage → nurture → deliver | SEND → email-quality-auditor (EQS) |
/aaron-marketing:email |
|
| Paid ads | 16 | research → orchestrate → activate → scale | ROAS → ad-account-auditor (RQS) |
/aaron-marketing:ad |
| Influencer | 16 | scout → target → activate → report | STAR → creator-content-auditor (SQS); fit-scorer produces the Suitability (S) read |
/aaron-marketing:influencer |
| Launch | 16 | research → assemble → mobilize → prove | RAMP preflight / execution / outcome profiles | /aaron-marketing:launch |
| Protocol layer | 8 | — (shared machinery, outside the phase flows) | 7 truth registries (entity · creator · offer/claims · consent · launch · channel · narrative) + HOT/WARM/COLD memory | — |
/aaron-marketing:auto routes any natural-language goal across all of it. Skills and commands are plain Markdown; small Bash/Python-stdlib runtimes provide hooks, validation, scoring, registry events, connectors, and CI checks (no pip, no build step). Every skill runs at Tier 1 with data you provide; connectors only automate retrieval or an explicitly approved mutation.
The authoritative typed topology is references/system-catalog.json; see the generated system architecture for the readable four-layer map, all 120 paths, registry owners, auditor sinks, and distribution profiles.
The pre-merge standalone repos are now signpost repos pointing here — seo-geo-claude-skills (final 20-skill line preserved at tag
v9.9.12) and influencer-marketing-agent-skills (final IMPACT line at tagstandalone-final). Sibling-repo policy: docs/repo-family.md.
Contents
- Why this library
- Install
- First run
- Architecture
- Skill catalog
- Commands
- Connectors & enhancement tiers
- Recommended workflows
- Repository layout
- Design philosophy
- Quality guards (CI)
- Contributing & project docs
- Disclaimer
- License
Why this library
| Principle | What it means in practice |
|---|---|
| Keyless by default | Every skill works at Tier 1 with data you paste or pull from free/first-party sources. Paid tools and MCP servers are an opt-in convenience, never a precondition. Paid-ads skills score from your own-account manual export — keyed ad APIs are never required. |
| Content-first, executable contracts | Skills remain Markdown. Small Bash/Python-stdlib runtimes make scoring, state, safety, and conformance deterministic without adding package dependencies. |
| One shared contract | All 120 skills expose the same seven sections and self-declare discipline + phase metadata, so the library behaves like one operating system: each skill knows its inputs, outputs, and the next best skill to hand off to. |
| Gated quality | Eight benchmarks drive eight auditor-class gates that emit structured, machine-checkable verdicts — not vibes. Success/failure/batch hooks surface invalid writes through bounded checks. Pre-commit/CI protect committed Git content from PII; they do not validate ignored runtime artifacts. |
| Truth lives in events | Seven append-only registry streams are canonical; owner-controlled projections expose entity, creator, claims, consent, launch, channel, and narrative state without destructive queues. |
| Memory across turns | A HOT/WARM/COLD memory model carries findings, scores, and open loops between skills and sessions, sanitized on the way in. |
| Plain voice | Skills ship an AI-slop detector and a banned-phrase list so output reads like a human wrote it. |
Install
Use it with Claude Code, any Agent Skills-compatible host, or a plain git clone:
| Host | Install |
|---|---|
| Claude Code | /plugin marketplace add aaron-he-zhu/aaron-marketing-skills then /plugin install aaron-marketing@aaron |
| Codex · Cursor · OpenCode · Antigravity · Gemini CLI · Copilot CLI · OpenClaw · Hermes · 70+ hosts | npx skills add aaron-he-zhu/aaron-marketing-skills |
| SkillHub.cn (中文社区) | skillhub install (e.g. aaron-campaign-architect or legacy unprefixed slugs like keyword-research) |
| Any host | git clone https://github.com/aaron-he-zhu/aaron-marketing-skills |
In Claude Code, marketplace add only registers the catalog — run /plugin install aaron-marketing@aaron (or pick it from /plugin) to actually enable the skills and commands. To pull a single skill on a generic host: npx skills add aaron-he-zhu/aaron-marketing-skills -s keyword-research. Browse the bundle on the skills.sh registry. Per-agent directories, frontmatter quirks, and what degrades outside the plugin: docs/agent-compatibility.md (verified 120/120 installable, 2026-07).
Installing the plugin adds nothing to your /mcp list — the MCP catalogue lives in docs/mcp-catalog.json, deliberately outside the plugin-root .mcp.json path that Claude Code auto-registers, so it is a copy-paste reference only (see Connectors).
First run
If your host supports automatic skill routing, just describe the goal:
Research keywords for my SaaS product targeting small teams
Find TikTok creators for a skincare launch and score their fit
Audit this Google Ads account before I scale — exports attached
Or use the slash commands — /auto for routing, or a discipline entrypoint:
/aaron-marketing:auto turn our pricing page into an AI-citable comparison hub
/aaron-marketing:seo-geo https://example.com/blog/my-article --phase tune
/aaron-marketing:auto infers intent and runs the smallest useful workflow, stopping only at blocking decisions. Every skill works with pasted data; optional tools are documented in CONNECTORS.md.
Architecture
The shared skill contract
Every skill follows the same activation contract — seven sections in a fixed order:
- Trigger / when-to-use — when the skill should fire.
- Quick Start — copy-paste prompts.
- Skill Contract — Expected output · Reads · Writes · Promotes · Done-when · Primary next skill.
- Handoff Summary — the standard hand-off shape so the next skill picks up cleanly.
- Data Sources —
~~categoryplaceholders, each with a keyless Tier-1 path. - Instructions — the numbered method (treats all exports as untrusted input).
- Next Best Skill — where to go next (with visited-set + max-depth termination rules).
Every skill also self-declares metadata.discipline (narrative / seo-geo / influencer / ad / email / launch / social / protocol, where ad is Paid Ads/ROAS) and metadata.phase, so routing and clustering work uniformly. The contract is documented once in skill-contract.md; the shared cross-skill state lives in state-model.md.
The system: a four-layer marketing operating system
One brand voice, expressed through five always-on channels, concentrated into launch moments, all reading and writing a shared system of record. Seven disciplines, four altitudes — a system, not a pile.
| Layer | Adopt | Disciplines | Cadence |
|---|---|---|---|
| L1 · Strategy — what we say / who we are | crawl | Narrative · TALE | always-on |
| L2 · Channels — always-on engines that express the strategy (owned → bought) | walk | SEO/GEO · CORE-EEAT + CITE · Organic Social · ECHO · Email · SEND · Paid Ads · ROAS · Influencer · STAR | always-on (influencer episodic-leaning) |
| L3 · Orchestration — the time-boxed moment across channels | run | Product Launch · RAMP | episodic |
| L4 · Protocol — the shared system of record | — | 7 truth registries + working memory · 8 auditor gates · one skill contract | — |
Narrative is the message; the channels are the mediums that express it. Each core builder records the exact canon ID/version and claims-projection offset it used, or an explicit approved fallback/block. Each discipline’s 4-phase loop lives inside its layer (Narrative = Trace → Architect → Land → Evaluate).
All seven use phase directories in the catalog order: Narrative → SEO/GEO → Social → Email → Paid → Influencer → Launch. Note “activate” means creator outreach for influencer but account-gating for paid ads — same word, discipline-specific scope.
Quality system: eight frameworks, eight gates
Eight benchmarks make “good” measurable. Each defines dimensions, a rollup method, and a small set of veto items (hard fails that cap or block a score regardless of the rest):
| Framework | Scores | Items / dimensions | Rollup | Veto items |
|---|---|---|---|---|
| TALE | Brand narrative Truth / Architecture / Landing / Evidence | T / A / L / E | Separate truth, system, and effectiveness profile results; no overall composite | T1/A1/L1/E1 |
| CORE-EEAT | Content quality with diagnostic CORE/GEO and EEAT/SEO views | 80 items / 8 dimensions | complete profile-weighted result; diagnostic views are not separate totals | T04, C01, R10 |
| CITE | Domain authority & citation trust | 40 items / 4 dimensions | arithmetic weighted mean | T03, T05, T09 |
| STAR | Influencer Suitability / Trust / Appeal / Return | S / T / A / R · 40 items / 4 dimensions | SQS = floor(profile-weighted mean) (arithmetic) | STAR-S2/S6, STAR-T1/T2/T3 |
| ROAS | Paid ads Return / Offer / Audience / Spend-efficiency | R / O / A / S | RQS = floor(profile-weighted mean) (arithmetic) | R1/R2/O1/O2/A1 |
| SEND | Email marketing Sender-integrity / Engagement / Nurture / Direct-response | S / E / N / D | EQS = floor(profile-weighted mean) (arithmetic) | S1/S2/N1/D1 |
| RAMP | Product launch Readiness / Assets / Momentum / Proof | R / A / M / P · 40 stable IDs | Separate preflight, execution, and outcome profile results; never average time horizons | R1/A1/M1/P1 (framework-qualified — distinct from ROAS R1/A1) |
| ECHO | Organic social Embeddedness / Craft / Hosting / Observability | E / C / H / O · 40 stable IDs | One asset-gate or program-maturity profile per run; never combine asset and operating constructs | E1/C1/C2/H1/H2/O1 (framework-qualified — distinct from ROAS O1/O2) |
Each framework is enforced by an auditor-class gate — a skill that emits a typed artifact (class: auditor-output) checked by the deterministic validator and bounded lifecycle hooks. Repository CI regression-tests the validator and contract; it does not inspect ignored host-runtime artifacts. Gates are workflow steps, so each lives in its discipline and is counted there:
| Gate | Framework | Lives in | Verdict |
|---|---|---|---|
| narrative-quality-auditor | TALE profile gate | narrative/evaluate/ (narrative) |
Separate truth/system/effectiveness results before adoption |
| content-quality-auditor | CORE-EEAT | seo-geo/tune/ (SEO/GEO) |
SHIP / FIX / BLOCK before publishing |
| domain-authority-auditor | CITE | seo-geo/evaluate/ (SEO/GEO) |
SHIP / FIX / BLOCK / UNDECIDED; trust labels are explanatory only |
| creator-content-auditor | STAR SQS | influencer/activate/ (influencer) |
SHIP / FIX / BLOCK / UNDECIDED plus creator-facing translation |
| ad-account-auditor | ROAS RQS | ad/activate/ (paid) |
SHIP / FIX / BLOCK before budgets scale |
| email-quality-auditor | SEND EQS | email/deliver/ (email) |
SHIP / FIX / BLOCK before send |
| launch-readiness-auditor | RAMP lifecycle-profile gate | launch/mobilize/ (launch) |
SHIP / FIX / BLOCK for one declared lifecycle read |
| social-quality-auditor | ECHO asset/program gate | social/host/ (social) |
SHIP / FIX / BLOCK for one declared unit/profile |
Shared veto policy: one verified veto caps the final score at min(raw, 59); two or more verified vetoes produce status: DONE + verdict: BLOCK and no final score. Missing evidence is Unknown, resulting in NEEDS_INPUT/UNDECIDED, never an automatic failure. Gate mechanics live in auditor-runbook.md and are executed by the typed scorer.
The protocol layer
The protocol/ directory holds the shared truth & memory machinery that sits outside the discipline phase-flows — 8 skills, counted separately:
| Skill | Job | Anchored to | Canonical stream / role |
|---|---|---|---|
| entity-registry | Owns machine-facing entity identity and recognition facts | SEO/GEO | memory/events/entities.ndjson |
| creator-registry | Owns creator identity, audience, rights, terms, and compliance facts | influencer | memory/events/creators.ndjson |
| offer-claims-registry | Owns accepted offer/claim wording and substantiation pointers | paid | memory/events/claims.ndjson |
| consent-registry | Owns pseudonymous consent/suppression facts and live safety state | memory/events/consent.ndjson |
|
| launch-registry | Owns launch stage, dates, submissions, manifests, and outcomes | launch | memory/events/launches.ndjson |
| channel-registry | Owns channel state, cadence, voice pointers, and UGC permissions | social | memory/events/channels.ndjson |
| narrative-registry | Owns complete versioned narrative canon records | narrative | memory/events/narrative.ndjson |
| memory-management | Manages authorized HOT/WARM/COLD working notes without impersonating a registry | all disciplines | non-canonical memory/ working state |
The registries follow a sole-writer rule (other skills submit via registry-events.py proposal events), and they curate — the gates judge. The genuinely horizontal layer beneath everything is the references/ protocols (auditor-runbook, state-model, skill-contract, humanizer-slop, measurement-protocol) — shared by design as documents, not skills.
Memory & automation hooks
Memory is temperature-tiered, so context survives across skills and sessions without bloating the prompt:
| Tier | Location | Behavior |
|---|---|---|
| HOT | memory/hot-cache.md |
Auto-loaded each session; capped at 80 lines AND 25 KB (whichever trips first). |
| WARM | memory// |
Per-skill working state and permissioned audit artifacts; registry projections are separate rebuildable views. |
| COLD | memory/archive/ |
Demoted/older records, kept for recall. |
Hooks (hooks/hooks.json, runner hooks/claude-hook.sh) wire seven Claude Code events:
| Event | Matcher | What it does |
|---|---|---|
SessionStart |
startup|resume|clear|compact |
Injects the sanitized hot-cache + load-time over-limit & oldest-dated-entry staleness signals + an open-loops pointer (prompt-injection lines are redacted; symlinked caches are rejected). |
UserPromptSubmit |
(all) | Lightweight per-prompt context hook. |
PreToolUse |
known write-capable tools | Exact-path direct memory/** writes must be Git-ignored; opaque shell/MCP memory mutations are unsupported and denied when identified. Registry writes repeat exact final/temp/lock checks inside their runtime. |
PostToolUse |
known write-capable tools | After successful writes, audits the full operational-memory namespace and validates the exact audit target or bounded reserved-sink sweep. |
PostToolUseFailure |
known write-capable tools | Runs the same post-state privacy and Artifact Gate checks after a tool reports failure, because a failed command may still have written files. |
PostToolBatch |
(all) | Rechecks operational memory and the complete reserved sink after each parallel tool batch. |
Stop |
(all) | Performs a final bounded sweep and can block once for repair. The required stop_hook_active loop guard permits the subsequent stop. Pre-commit/CI remain Git/PII backstops only; they do not validate ignored runtime artifacts. |
The Artifact Gate is framework-agnostic — the same hook validates TALE, CORE-EEAT, CITE, STAR, ROAS, SEND, RAMP, and ECHO artifacts with no per-framework code.
Skill catalog
Skill links open each SKILL.md. Expand the Details under each discipline for a one-line purpose per skill. Catalog order follows the four-layer strata — Narrative (L1 · Strategy) first, the five always-on channels next, Launch (L3 · Orchestration), then the Protocol layer.
Narrative — TALE (16) · 📖 Discipline guide
Four phase directories under narrative/ (4 skills each) follow the TALE loop (Trace → Architect → Land → Evaluate); the gate (⛩ narrative-quality-auditor) sits in Evaluate. It runs truth, system, and effectiveness profiles separately; a full review links three results and never averages them. Narrative is the L1 · Strategy layer: one brand voice the five always-on channels inherit. It absorbs positioning — positioning-mapper stays physically in launch/ but reads logically as the front of TALE Trace.
SEO/GEO — SITE (16) · 📖 Discipline guide
Four phase directories (4 skills each) plus the discipline’s two quality gates (marked ⛩).
Social — ECHO (16) · 📖 Discipline guide
Four phase directories under social/ (4 skills each) follow the ECHO loop; the gate (⛩ social-quality-auditor) sits in Host. Each run selects the asset gate or one program-maturity profile; those constructs are never combined. The discipline ships no posting, engagement, or DM automation of any kind.
Email — SEND (16) · 📖 Discipline guide
Four phase directories under email/ (4 skills each) follow the SEND loop; the gate (⛩ email-quality-auditor) sits in Deliver. Only the gate computes EQS from the declared promotional, retention, cold-outbound, or newsletter profile — every other skill works one lever and hands off.
Paid Ads — ROAS (16) · 📖 Discipline guide
Four phase directories under ad/ (4 skills each) follow the ROAS loop; the gate (⛩ ad-account-auditor) sits in Activate. Only the gate computes the profile-weighted RQS — every other skill works one lever and hands off.
Influencer — STAR (16) · 📖 Discipline guide
Four phase directories (4 skills each); the discipline’s gate (⛩ creator-content-auditor) sits in Activate.
| Phase | Skills |
|---|---|
| Scout | audience-mapper, trend-spotter, influencer-discovery, fit-scorer |
| Target | competitor-tracker, campaign-planner, brief-generator, budget-optimizer |
| Activate | outreach-manager, ⛩ creator-content-auditor, contract-helper, content-amplifier |
| Report | landing-optimizer, performance-analyzer, roi-calculator, report-generator |
Launch — RAMP (16) · 📖 Discipline guide
Four phase directories under launch/ (4 skills each) follow the RAMP loop; the gate (⛩ launch-readiness-auditor) sits in Mobilize. Each run selects one preflight, execution, or outcome profile; scores from different lifecycle reads are linked but never averaged.
Protocol layer (8)
The shared truth & memory machinery — see Architecture § The protocol layer for roles and sole-writer rules.
| Group | Skills |
|---|---|
| Protocol | entity-registry, creator-registry, offer-claims-registry, consent-registry, launch-registry, channel-registry, narrative-registry, memory-management |
Commands
Eight commands: /aaron-marketing:auto routes any goal across all seven disciplines, and each discipline has exactly one explicit entrypoint. Source: commands/.
| Command | Use it for | Narrowing |
|---|---|---|
/aaron-marketing:auto |
Describe any goal — infers intent and runs the smallest useful workflow | --deep (exhaustive / stress-test) |
/aaron-marketing:narrative |
Brand narrative (TALE loop): trace the current story & category, architect the strategic narrative & message system, land it across channels, the quality gate, resonance & drift | --phase trace|architect|land|evaluate |
/aaron-marketing:seo-geo |
SEO/GEO end-to-end (SITE loop): survey demand/competitors, implement content, tune quality/tech/on-page, evaluate authority/rankings/reports/memory | --phase survey|implement|tune|evaluate + per-phase flags (--competitors --map · --brief --series --refresh --publish --meta --schema --type · --full --tech --visibility · --authority --alert --report --remember --period) |
/aaron-marketing:influencer |
Influencer (STAR loop): audience insight, scouting & fit, targeting, outreach, amplification, ROI reporting | --phase scout|target|activate|report |
/aaron-marketing:ad |
Paid ads (ROAS loop): segments, structure, creative, experiment design, the audit gate, measurement | --phase research|orchestrate|activate|scale |
/aaron-marketing:email |
Email (SEND loop): deliverability/consent, segmentation, creative, lifecycle flows, monetization, send-testing, the audit gate | --phase setup|engage|nurture|deliver |
/aaron-marketing:launch |
Product launch (RAMP loop): positioning, tier & window, message house & assets, the readiness gate, launch-day run, monitoring & retro | --phase research|assemble|mobilize|prove |
/aaron-marketing:social |
Organic social (ECHO loop): channel portfolio & voice, calendar & creative, the quality gate, engagement/crisis hosting, pulse & measurement | --phase explore|craft|host|observe |
Daily work normally starts with /aaron-marketing:auto; the other seven are explicit discipline entrypoints, with --phase to narrow the stage.
Connectors & enhancement tiers
Skills name tools with ~~category placeholders (~~SEO tool, ~~web analytics, ~~ad platform, ~~email platform, …) instead of specific vendors, and every category has a keyless Tier-1 path. Full recipes — including the free/first-party endpoint for each category — are in CONNECTORS.md.
The connector layer is a product in itself
100+ documented integration paths across three engineered layers — and every one of them earns its place:
| Layer | What you get |
|---|---|
| 21 bundled zero-dependency connectors | Pure Python stdlib — no pip, no build step. Keyless live SERP + JS-rendered scraping (Firecrawl, Tavily), an AI-answer citation probe, DNS-over-HTTPS email-auth pulls, Wikipedia attention series, GDELT news mentions, real YouTube creator metrics, IndexNow + Baidu index push, Resend ESP automation, and a git-diffable measurement ledger that turns any of them into a before/after time series. |
| 60+ documented official/free APIs | Every row links the vendor’s official documentation, carries a verified-on date, and every link is HTTP-checked before it ships. Includes the paths most tool lists miss: GSC URL Inspection, CrUX History (40 weeks of field CWV), the Gmail Postmaster Tools API, Meta’s Ad Library, Microsoft Clarity’s Data Export API. |
| Vendor MCP servers | 18 remote endpoints catalogued (never auto-registered — your /mcp list stays clean) plus the official self-hosted servers for Google Analytics, Search Console, Google Ads, and Microsoft Clarity. Two remote MCPs work with no key at all (Firecrawl, Tavily). |
What makes them trustworthy rather than just numerous:
- Three safety classes, engineered gates (SECURITY.md): hosted fetchers run a local robots.txt pre-flight before every delegated fetch and refuse on Disallow; anything that mutates external state (email sends, index pushes) is dry-run by default behind an explicit
--liveflag, with idempotency keys where the vendor supports them and no auto-retry where it doesn’t. - Verified, then re-verified: endpoints are checked against primary vendor docs with dates, keyless paths are live-tested, a CI guard enforces version/tracking sync, and a pre-release live smoke catches endpoint drift (it has already caught real API changes — twice).
- Facts, not verdicts: connectors report record presence, parsed tags, and raw series; the auditor gates do the judging, and skills label every number Measured / User-provided / Estimated.
- A written playbook (docs/connector-playbook.md) governs every addition — qualify, verify, implement, test, wire, document, track, regress, record — so quality holds as the catalog grows.
| Tier | Requires | You get |
|---|---|---|
| Tier 1 (default) | Nothing | Paste data, or pull it from free/public sources. The full analysis framework runs either way. |
| Tier 2 | One free first-party API or MCP | Automatic retrieval of your own GSC / GA4 / Core Web Vitals data. |
| Tier 3 | A fuller MCP set | Fully automated multi-source workflows. |
- Bundled zero-dependency helpers under
scripts/connectors/(Python stdlib only) pull public/own data locally — e.g. PageSpeed/CrUX, Open PageRank, page crawl, Wayback CDX, Wikidata SPARQL, Common Crawl, advertools recipes — plusresend.py, direct Resend ESP automation for the email skills (free-tier key: domain-auth status, seed-test sends, suppression sync, broadcast scheduling; mutating subcommands dry-run by default and require--live), andfirecrawl.py+tavily.py, keyless hosted-fetcher automation for the research skills (Firecrawl: live web SERP + JS-rendered page markdown + site maps; Tavily: scored search + an AI answer engine’s cited-sources probe for GEO + URL extract — both free with no key at all, both with a local robots.txt pre-flight built in). - Free/keyless sources documented per category: Google Search Console & GA4 (own data), PageSpeed/CrUX, Wikidata, Common Crawl, Open PageRank, Firecrawl keyless SERP/scrape, Tavily keyless AI-search, DNS-over-HTTPS email-auth records (
doh.py), Wikipedia attention series (pageviews.py), GDELT news mentions (gdelt.py), YouTube creator metrics on a free key (youtube.py), IndexNow + Baidu index push (indexpush.py, dry-run gated), the ad-transparency libraries (Meta/Google/TikTok), and recipe rows for crt.sh, the W3C validator, oEmbed, and HN Algolia. - Opt-in MCP servers (Ahrefs, Semrush, SE Ranking, SISTRIX, SimilarWeb, the self-hosted free OpenSEO suite, Cloudflare, Vercel, HubSpot, Amplitude, Notion, Webflow, Sanity, Contentful, Slack, Resend, the keyless Firecrawl and Tavily) are catalogued in
docs/mcp-catalog.jsonas a copy-paste reference only — the catalog sits outside the auto-registered plugin-root.mcp.jsonpath, so nothing is registered for you. Copy the entries you want into your own MCP config.
Paid-ads skills score from your own-account manual export (native ad-manager CSV, GA4, ecommerce). Keyed ad-platform APIs (Google Ads SDK, Meta Marketing API) are opt-in Tier-2/3 only and never a Tier-1 requirement. Email skills score the same way — from your own ESP export — and every deliverability signal is keyless (DNS lookups, a DMARC RUA report, and a seed-list inbox test), so a keyed ESP API is never a Tier-1 requirement either; when Resend is your ESP, the bundled resend.py automates the same loop on the free tier.
Recommended workflows
Most real goals span disciplines. /aaron-marketing:auto routes a natural-language goal to the smallest useful chain across all seven — a product launch, for instance, pulls Launch, Email, Social, and Paid at once:
/aaron-marketing:auto launch our v2 on Product Hunt in 3 weeks — 1,200 on the waitlist; we need the page, the emails, and a launch-day plan
Or drive one discipline’s loop end to end — each discipline’s 📖 Discipline guide (linked from the skill catalog) adds scenario-level plays:
Narrative (TALE loop)
- Trace —
narrative-baseline-mapper→category-narrative-mapper→audience-belief-mapper→positioning-truth-tracer - Architect —
strategic-narrative-designer→message-system-architect→brand-language-codifier→story-bank-builder - Land —
narrative-cascade-planner→pitch-narrative-builder→narrative-enablement-kit→proof-point-packager - Evaluate —
narrative-quality-auditor(⛩ TALE gate) →message-test-designer→narrative-resonance-monitor→narrative-drift-monitor
SEO/GEO (SITE loop)
- Survey —
keyword-research→competitor-analysis→content-gap-analysis - Implement —
content-writer→geo-content-optimizer→serp-markup-builder/page-play-builder - Tune —
content-quality-auditor(⛩ publish gate) →on-page-seo-checker→technical-seo-checker→site-structure-optimizer - Evaluate —
rank-tracker→performance-monitor→offsite-signal-analyzer;domain-authority-auditor(⛩) for the trust review
Social (ECHO loop)
- Explore —
channel-portfolio-planner→voice-dossier-builder→platform-norm-profiler→participation-warmup-planner - Craft —
social-calendar-builder→social-creative-builder→short-video-scripter→advocacy-program-designer - Host —
social-quality-auditor(⛩ ECHO gate) →engagement-inbox-manager→social-selling-planner→crisis-response-planner - Observe —
social-pulse-monitor→share-of-voice-tracker→dark-social-attributor→social-measurement-loop
Email (SEND loop)
- Setup —
deliverability-qa→list-segment-builder - Engage —
email-creative-builder - Nurture —
email-sequence-designer→newsletter-monetization-planner - Deliver —
send-experiment-designer→email-quality-auditor(⛩ EQS gate) before send
Paid Ads (ROAS loop)
- Research —
audience-segment-builder→campaign-architect - Orchestrate —
ad-creative-builder→ad-test-designer(+landing-optimizerfor the page) - Activate —
conversion-signal-qa→ad-account-auditor(⛩ RQS gate) before any budget goes live - Scale —
paid-measurement-loop→attribution-reconciler→roi-calculator→report-generator
Influencer (STAR loop)
- Scout —
audience-mapper→trend-spotter→influencer-discovery→fit-scorer(STAR Suitability) - Target —
competitor-tracker→campaign-planner→brief-generator→budget-optimizer - Activate —
outreach-manager→creator-content-auditor(⛩ STAR gate) →contract-helper→content-amplifier - Report —
landing-optimizer→performance-analyzer→roi-calculator→report-generator
Launch (RAMP loop)
- Research —
positioning-mapper→launch-tier-planner→launch-window-planner→early-access-designer - Assemble —
message-house-builder→launch-asset-packager→pricing-packaging-planner→sales-enablement-kit - Mobilize —
launch-readiness-auditor(⛩ RAMP gate) →launch-day-conductor→community-launch-runner→press-media-relations - Prove —
launch-monitor→launch-feedback-synthesizer→launch-retro-analyzer→momentum-planner
For a full trust review, pair content-quality-auditor with domain-authority-auditor for a combined 120-item assessment. With memory-management active, handoffs and open loops persist in HOT/WARM/COLD memory automatically.
Repository layout
narrative/{trace,architect,land,evaluate}/ # Narrative — TALE (16, incl. its gate)
seo-geo/{survey,implement,tune,evaluate}/ # SEO/GEO (16, incl. its 2 gates)
influencer/{scout,target,activate,report}/ # Influencer (16, incl. its gate)
ad/research|orchestrate|activate|scale/ # Paid Ads — ROAS (16, incl. its gate)
email/setup|engage|nurture|deliver/ # Email — SEND (16, incl. its gate)
launch/research|assemble|mobilize|prove/ # Launch — RAMP (16, incl. its gate)
social/explore|craft|host|observe/ # Social — ECHO (16, incl. its gate)
protocol/ # Protocol layer (8) — truth registries + memory
commands/ # 8 slash commands (auto, narrative, seo-geo, influencer, ad, email, launch, social)
references/ # shared contract, state model, the 8 benchmarks, auditor runbook, platform packs
evals/ # per-skill structural eval cases + structure-manifest.json
hooks/ # hooks.json + claude-hook.sh (the only runtime logic)
scripts/ # validate-skill.sh + connectors/ (stdlib) + CI guards
memory/ # HOT/WARM/COLD scaffolding + registry stores (entities/creators/claims/consent/launch/channels/narrative-registry)
docs/ # localized README (zh)
.claude-plugin/ # plugin.json + marketplace.json mirror
This source repository contains both runtime and maintenance assets. User distributions are allowlisted by references/distribution-files.json and built with python3 scripts/build-distribution.py --output --plugin; tests, evals, CI, generators, and contributor-only documentation are intentionally excluded. A standalone skill build uses --skill and contains only that skill directory.
Design philosophy
- Skills are content. The only code is the Bash validator, the Bash hook runner, and zero-dependency Python-stdlib connector/check helpers. No third-party /
pipdependencies, ever — enforced by a dependency-creep guard. - Keyless first. Every
~~categoryhas a free/own-data recipe; MCP and paid tools are pure convenience. - Surgical & MECE. Each skill owns one job with a crisp scope boundary; overlapping work ships as a mode of an existing skill rather than a new thin skill. Registries curate, gates judge, analyzers feed gates.
- No invented numbers. Skills label every figure Measured / User-provided / Estimated and ship an AI-slop / banned-phrase detector.
- Compliance is guidance, not law. FTC-disclosure and claim-integrity checks flag risk; they are not legal advice.
Quality guards (CI)
Every change runs against a set of fail-closed guards (all in scripts/ and tests/):
| Guard | Checks |
|---|---|
validate-skill.sh |
Frontmatter, required sections, version consistency, plugin-relative links across all 120 skills. |
golden-auditor-math.py |
Deterministic weight-sum + worked-example arithmetic for all eight frameworks. |
check-evals.py |
Eval structural lint + structure-manifest.json (120/120 skills carry eval cases). |
check-pii.py |
Blocks committed secrets / PII (token-level allowlist, fail-closed). |
check-stdlib-only.sh |
Dependency-creep guard + the Paid-Ads keyed-API red line. |
check-versions.sh |
Version-sync guard: system catalog, plugin/marketplace/OpenClaw manifests, root + localized README badges, AGENTS/CLAUDE/VERSIONS, GitHub About, and all 120 skill versions stay aligned. |
tests/test_connectors_local.py |
Offline request-builder/parser tests spanning all 29 bundled connector modules (no network in CI). |
tests/test_hook_artifact_gate.sh |
Behavior tests for the hook’s Artifact Gate + SessionStart sanitization. |
Live endpoint drift is sampled separately by the manual scripts/connectors/smoke-live.sh — one minimal real call per hosted connector listed in that script, with shape assertions (rate-limit answers count as SKIP); run it before a release, never in CI.
Contributing & project docs
- CONTRIBUTING.md — authoring rules, the contribution checklist, and the authoritative 10-surface tracking list.
- VERSIONS.md — per-skill versions + changelog (current bundle:
18.0.0). - SECURITY.md · PRIVACY.md · CODE_OF_CONDUCT.md — security, privacy, and community policy.
- CLAUDE.md / AGENTS.md — agent-facing context for this repo.
Disclaimer
These skills assist brand-narrative, SEO/GEO, influencer-marketing, paid-ads, email-marketing, product-launch, and organic-social workflows but do not guarantee rankings, AI citations, traffic, engagement, conversions, ROAS, deliverability, or business outcomes. Influencer-, ad-, email-, and social-compliance checks (FTC disclosure, claim integrity, platform policy, consent/opt-in, material-connection disclosure) are guidance, not legal advice. Verify recommendations with qualified professionals before relying on them for major strategy, financial, or legal decisions.
License
Apache License 2.0 — see LICENSE.
Star History
推奨ツール
別のキーワードを試すか、フィルタを外してください。
インストール
npx skillfish add aaron-he-zhu/aaron-marketing-skills