product-marketing
π―SkillCreates and maintains a product marketing context document at `.agents/product-marketing.md` covering product, ICP, positioning, competitors, customer language and brand voice. Other marketing skills read it so users do not have to repeat themselves.
Installation
npx skills add coreyhaines31/marketingskills --skill product-marketingRun it in a terminal; it asks which AI coding tools to install it for (Claude Code, Codex, Cursor and more).
Uses skills.sh Β· Node.js 22.20+
After installing
Ask for related work and the agent uses it on its own, or call it yourself.
/product-marketingInstall by hand
Copy the whole skill folder from GitHub to the place below. Copying only SKILL.md can leave out files the skill uses.
Open the skill folder β- This project
.claude/skills/product-marketing/ - All projects
~/.claude/skills/product-marketing/
These paths are for Claude Code. For other tools, the command above puts it in the right place.
What this skill does
Overview
This skill builds the foundational positioning and messaging document that other marketing skills reference. It checks for an existing file, then either auto-drafts a V1 from the codebase (README, landing pages, package.json) or walks through each section conversationally.
Key Features
- Captures 14 sections including personas, pain points, competitive landscape, switching dynamics and proof points
- Pushes for verbatim customer language and builds brand voice from copy that already performed
- Optional Paid Ads section with target CPA or ROAS, conversion definitions and agent permissions
- Document versioning with a dated changelog on every substantive update
- Learnings table that records tested results and decisions for drafting skills to reuse
Who is this for?
Founders and marketing teams starting AI-assisted marketing work on a new project should run this first. It also helps teams whose audience or positioning has changed and who want a shared record of what they have learned.
Summarized by AI from this skill's SKILL.md. Suggest a better one
SKILL.md
View on GitHub βWhen the user wants to create or update the product marketing context doc (.agents/product-marketing.md), or asks what belongs in it or whether positioning or ICP is clear enough: product, ICP, positioning, competitors, customer language, brand voice. Use it before other marketing skills on a new project, when the audience or positioning changes, and to log learnings.
Product Marketing Context
You help users create and maintain a product marketing context document. This captures foundational positioning and messaging information that other marketing skills reference, so users don't repeat themselves.
The document is stored at .agents/product-marketing.md.
Workflow
Step 1: Check for Existing Context
First, check if .agents/product-marketing.md already exists. Also check .claude/product-marketing.md and the legacy filename product-marketing-context.md (in either .agents/ or .claude/) for older setups β if found anywhere other than .agents/product-marketing.md, offer to move it to the canonical location.
If it exists:
- Read it and summarize what's captured β note its current Document version and the last few Changelog entries so the user sees where the doc stands and what's changed recently
- Ask which sections they want to update
- Only gather info for those sections
- On any substantive save, bump the version and add a changelog entry (see Step 4). This doc is the shared context every other marketing skill reads, so a dated paper trail of what changed and why is worth keeping.
If it doesn't exist, offer two options:
-
Auto-draft from codebase (recommended): You'll study the repoβREADME, landing pages, marketing copy, package.json, etc.βand draft a V1 of the context document. The user then reviews, corrects, and fills gaps. This is faster than starting from scratch.
-
Start from scratch: Walk through each section conversationally, gathering info one section at a time.
Most users prefer option 1. After presenting the draft, ask: "What needs correcting? What's missing?"
Step 2: Gather Information
If auto-drafting:
- Read the codebase: README, landing pages, marketing copy, about pages, meta descriptions, package.json, any existing docs
- Draft all sections based on what you find
- Present the draft and ask what needs correcting or is missing
- Iterate until the user is satisfied
If starting from scratch: Walk through each section below conversationally, one at a time. Don't dump all questions at once.
For each section:
- Briefly explain what you're capturing
- Ask relevant questions
- Confirm accuracy
- Move to the next
Push for verbatim customer language β exact phrases are more valuable than polished descriptions because they reflect how customers actually think and speak, which makes copy more resonant.
Sections to Capture
1. Product Overview
- One-line description
- What it does (2-3 sentences)
- Product category (what "shelf" you sit onβhow customers search for you)
- Product type (SaaS, marketplace, e-commerce, service, etc.)
- Business model and pricing
2. Target Audience
- Target company type (industry, size, stage)
- Target decision-makers (roles, departments)
- Primary use case (the main problem you solve)
- Jobs to be done (2-3 things customers "hire" you for)
- Specific use cases or scenarios
3. Personas (B2B only)
If multiple stakeholders are involved in buying, capture for each:
- User, Champion, Decision Maker, Financial Buyer, Technical Influencer
- What each cares about, their challenge, and the value you promise them
4. Problems & Pain Points
- Core challenge customers face before finding you
- Why current solutions fall short
- What it costs them (time, money, opportunities)
- Emotional tension (stress, fear, doubt)
5. Competitive Landscape
- Direct competitors: Same solution, same problem (e.g., Calendly vs SavvyCal)
- Secondary competitors: Different solution, same problem (e.g., Calendly vs Superhuman scheduling)
- Indirect competitors: Conflicting approach (e.g., Calendly vs personal assistant)
- How each falls short for customers
6. Differentiation
- Key differentiators (capabilities alternatives lack)
- How you solve it differently
- Why that's better (benefits)
- Why customers choose you over alternatives
7. Objections & Anti-Personas
- Top 3 objections heard in sales and how to address them
- Who is NOT a good fit (anti-persona)
8. Switching Dynamics
The JTBD Four Forces:
- Push: What frustrations drive them away from current solution
- Pull: What attracts them to you
- Habit: What keeps them stuck with current approach
- Anxiety: What worries them about switching
9. Customer Language
- How customers describe the problem (verbatim)
- How they describe your solution (verbatim)
- Words/phrases to use
- Words/phrases to avoid
- Glossary of product-specific terms
10. Brand Voice
- 3-5 voice attributes, each with what it means, what it doesn't mean, and a real line from existing copy
- Tone by context: how the voice shifts for support, launches, errors, sales, and social
- Brand words: terms you own, words you never use (with the reason)
Build this from copy that already performed and from the founder's own writing, rather than from adjectives picked in a meeting. See references/brand-voice.md for the extraction steps, a worked profile, before/after examples, and per-person voice guides.
11. Proof Points
- Key metrics or results to cite
- Notable customers/logos
- Testimonial snippets
- Main value themes and supporting evidence
12. Goals
- Primary business goal
- Key conversion action (what you want people to do)
- Current metrics (if known)
13. Paid Ads (optional, only if they run ads)
The ads skill reads this so the user doesn't re-explain the account every session.
- Margin reality: the target CPA or ROAS that keeps the business profitable, and the hard floor (the ROAS below which, or CPA above which, to flag immediately)
- Budget and pacing: monthly budget and acceptable daily variance
- Conversion truth: which conversion actions count and what each is worth, known tracking weaknesses (lag, double counting, offline gaps), and what separates a good lead from a form fill
- Campaign naming convention and what each campaign is for, one line each
- What the agent may do (read, compare, flag, draft, recommend) and may not do without approval (change budgets or bids, pause or launch, edit tracking, publish ads)
14. Learnings
Start this empty. It fills up as work ships (see "Maintaining Learnings" below).
Step 3: Create the Document
After gathering information, create .agents/product-marketing.md with this structure:
# Product Marketing Context
**Document version:** v1
**Last updated:** [date]
## Product Overview
**One-liner:**
**What it does:**
**Product category:**
**Product type:**
**Business model:**
## Target Audience
**Target companies:**
**Decision-makers:**
**Primary use case:**
**Jobs to be done:**
-
**Use cases:**
-
## Personas
| Persona | Cares about | Challenge | Value we promise |
|---------|-------------|-----------|------------------|
| | | | |
## Problems & Pain Points
**Core problem:**
**Why alternatives fall short:**
-
**What it costs them:**
**Emotional tension:**
## Competitive Landscape
**Direct:** [Competitor] β falls short because...
**Secondary:** [Approach] β falls short because...
**Indirect:** [Alternative] β falls short because...
## Differentiation
**Key differentiators:**
-
**How we do it differently:**
**Why that's better:**
**Why customers choose us:**
## Objections
| Objection | Response |
|-----------|----------|
| | |
**Anti-persona:**
## Switching Dynamics
**Push:**
**Pull:**
**Habit:**
**Anxiety:**
## Customer Language
**How they describe the problem:**
- "[verbatim]"
**How they describe us:**
- "[verbatim]"
**Words to use:**
**Words to avoid:**
**Glossary:**
| Term | Meaning |
|------|---------|
| | |
## Brand Voice
| Attribute | Means | Doesn't mean | Example line |
|-----------|-------|--------------|--------------|
| | | | |
**Tone by context:**
- Support:
- Launch:
- Errors:
- Sales:
- Social:
**Terms we own:**
**Never use (and why):**
## Proof Points
**Metrics:**
**Customers:**
**Testimonials:**
> "[quote]" β [who]
**Value themes:**
| Theme | Proof |
|-------|-------|
| | |
## Goals
**Business goal:**
**Conversion action:**
**Current metrics:**
## Paid Ads (optional)
**Target CPA / ROAS:**
**Hard floor:**
**Monthly budget and daily variance:**
**Conversions that count:**
| Action | Means | Value | Feeds bidding? |
|--------|-------|-------|----------------|
| | | | |
**Known tracking weaknesses:**
**Good lead vs. form fill:**
**Campaigns:** [name] β [what it's for]
**Agent may:** read, compare, flag, draft, recommend
**Agent may not (without approval):** change budgets or bids, pause or launch, edit tracking, publish ads
## Learnings
*Decisions and tested lessons. Newest first. Keep it to about 20 active entries.*
| Date | Learning | Evidence | Applies to | Status |
|------|----------|----------|------------|--------|
| | | | | |
## Changelog
*Newest first. One line per revision: what changed and why.*
- v1 ([date]) β Initial context.
Step 4: Confirm, Version, and Save
- Show the completed document
- Ask if anything needs adjustment
- Set the version and changelog β this is the paper trail for a doc every other skill reads:
- New document: set
Document version: v1and a single Changelog entry β- v1 ([today]) β Initial context. - Updating an existing document: increment the version (v2 β v3 β¦), update
Last updatedto today, and prepend a new Changelog entry at the top of the list (newest first) summarizing what changed and why in one line. Never rewrite or reorder past entries. - A good entry names the sections touched and the reason, not "updated the doc." Examples:
- v3 (2026-07-16) β Repositioned from "email tool" to "deliverability platform"; added RevOps to the ICP.- v2 (2026-06-02) β Rewrote value prop and objections after 5 customer interviews; added competitor Acme.
- Use today's date in ISO form (YYYY-MM-DD) for the entry and
Last updated. - Pure typo-only fix: don't bump the version or add a changelog entry β just save the correction. Every other change bumps the version and gets an entry. When the change is a real repositioning, say so plainly β downstream skills will now generate against the new context.
- New document: set
- Save to
.agents/product-marketing.md - Tell them: "Other marketing skills will now use this context automatically. The Changelog at the bottom tracks every revision β check it to see how your positioning has evolved. Run
/product-marketinganytime to update it."
Maintaining Learnings
The Changelog records how the document changed. Learnings records what the team found out by shipping: which angles won, which offers flopped, which decisions were made and why. Drafting skills (copywriting, emails, ads, ad-creative, social) read it before writing so the next brief starts from what's already known.
Entry format: one row per learning.
- Learning: one sentence, specific enough to change a draft. "Price-anchored headlines beat outcome headlines on the pricing page" works. "Be clearer" doesn't.
- Evidence: the test, campaign, or source, with the number and sample size. "Variant B +18% trial starts, 2,400 visitors per arm, 3 weeks."
- Applies to: the channels, segments, or skills it affects.
- Status:
active,watch(one data point, worth retesting), orretired.
What earns a place:
- A test result that reached its planned sample, or the same pattern seen in two or more campaigns
- A decision the user made with a reason (positioning, pricing, a channel cut) that future drafts must respect
- A correction the user gave more than once ("never call it a platform")
What doesn't: single-run anecdotes (log those as watch or leave them out), task notes, and anything that belongs in another section. A new objection goes in Objections; a new customer phrase goes in Customer Language.
When to retire an entry: a later test contradicts it, the product or market changed underneath it (new pricing, new ICP), or it hasn't been relevant for two quarters. Change the status to retired and add a line saying why, rather than deleting it, so nobody re-tests a settled question. Move retired rows to the bottom, and archive them once the table passes about 20 active rows.
Who writes it: any skill that finishes a test, campaign, or postmortem may propose a row. Show the proposed row to the user and add it on approval, with a version bump and a Changelog line like any other substantive change. Loops that run on a schedule do this through their session-end step (see marketing-loops).
Tips
- Be specific: Ask "What's the #1 frustration that brings them to you?" not "What problem do they solve?"
- Capture exact words: Customer language beats polished descriptions
- Ask for examples: "Can you give me an example?" unlocks better answers
- Validate as you go: Summarize each section and confirm before moving on
- Skip what doesn't apply: Not every product needs all sections (e.g., Personas for B2C, Paid Ads if they don't run ads)
More from this repository10
Helps you write or rewrite the text on website pages such as homepages, landing pages, and pricing pages. It keeps your own voice, writes only claims you can back up, and avoids phrases that sound like AI.
A skill that finds out why your website does not show up well in Google search and tells you what to fix first. It checks how search engines find your pages, then speed, titles and content.
Acts as a content strategist to plan content that drives traffic and leads, using topic clusters, buyer-stage keyword research and editorial priorities tied to customers and search. Helps decide what to write and why posts are not bringing customers.
Applies psychological principles and mental models to marketing, explaining why buyers behave as they do and how to influence decisions ethically. Covers biases like anchoring, social proof, scarcity, loss aversion and framing, plus strategic thinking models.
Helps brands get cited and recommended in AI-generated answers from Google AI Overviews, ChatGPT, Perplexity, Claude, Gemini and Copilot. Covers AEO and GEO, AI visibility audits, content structure, llms.txt and agent-readable sites.
Edits, tightens and proofreads existing marketing copy without rewriting it from scratch, using a Seven Sweeps framework and an AI-tell check. Requests to fix a single line get a focused point edit to that line only.
Acts as a marketing strategist that draws on a library of 139 marketing ideas to suggest the most relevant growth tactics for a software product based on its stage, budget and goals.
Writes and evaluates ad creative such as headlines, primary text, and variations for Google, Meta, LinkedIn, TikTok, and X, checked against each platform's character limits. It can iterate from performance data, produce grounded static batches, and plan which ads to make next.
Helps create B2B sales collateral that reps actually use, including decks, one-pagers, objection handling, demo scripts, battle cards, proposals and win-loss analysis. It emphasizes scannable, outcome-focused content and claims reps can defend.
Helps run and synthesize customer research, from analyzing transcripts, surveys and reviews to mining Reddit and review sites and running interviews. It extracts jobs to be done, pains, triggers and customer language, and labels each insight with a confidence level.