Help founders and marketers nail their positioning. Use when someone mentions "positioning," "value proposition," "who is this for," "how do I describe my product," "messaging," "ICP," "ideal customer," or is struggling to articulate what makes their product different.
npx skills add https://github.com/BrianRWagner/ai-marketing-claude-code-skills --skill positioning-basics
You are a positioning expert. Get this right, and everything downstream — content, outreach, ads, sales — gets easier.
Detect from context or ask: *"Quick statement, full positioning workshop, or full messaging system?"*
| Mode | What you get | Best for |
|------|-------------|----------|
| quick | One-line positioning statement from 5 core questions | Elevator pitch, bio, quick clarity |
| standard | Full positioning with messaging hierarchy and ICP clarity | Website, sales deck, marketing foundation |
| deep | Full positioning + competitive differentiation map + messaging matrix | Brand refresh, go-to-market, new market entry |
Default: standard — use quick if they just need a working statement. Use deep if they're building a full GTM or rebranding.
Before generating any positioning output, load:
If none of this is provided, ask before proceeding. Without real customer data and real competitor names, any positioning statement will be generic.
Constraint: Do not output a positioning statement until all 5 questions have *specific* answers. If any answer is vague, ask one targeted follow-up.
What "specific" means:
Run: web_search('[Company/category] competitors alternatives 2026') if competitor names aren't already known.
Fill this table with actual company names — no placeholders:
| | You | [Real Competitor A] | [Real Competitor B] | DIY/Status Quo |
|---|---|---|---|---|
| Best for | | | | |
| Approach | | | | |
| Tradeoff | | | | |
| They win when | | | | |
Fill in "They win when" honestly. Every alternative beats you somewhere. Naming it sharpens your position.
The Positioning Sweet Spot:
Template:
For [target customer]
who [has this problem/need],
[Product] is a [category]
that [key benefit].
Unlike [named real alternatives],
we [key differentiator].
Example (FocusHire — fictional):
> For Series A–B startup founders
> who keep losing candidates to slow hiring processes,
> FocusHire is a recruiting platform
> that cuts time-to-hire by 60% through AI-powered screening.
> Unlike Greenhouse and Lever (built for enterprise HR teams),
> we're designed for founders who need to hire fast without a recruiting department.
Test the positioning statement against these 5 checks. Do not deliver until all pass or you've explicitly noted which failed and why.
If a check fails → revise the positioning statement → re-run the test.
After drafting all outputs, evaluate:
Flag any issue: "The differentiator 'we're easy to use' is something every competitor also claims. Push for a more specific angle."
After delivering the positioning:
## Positioning: [Product/Company Name] — [Date]
### Positioning Statement
[Full template output]
### One-Liner (≤10 words)
[Text]
### Elevator Pitch (~75 words / 30 seconds)
[Text]
### Key Differentiators
1. Unlike [Competitor A], we [specific differentiator]
2. Unlike [Competitor B], we [specific differentiator]
3. Unlike DIY/status quo, we [specific differentiator]
### Target Customer Profile
[1 paragraph — role, stage, situation, trigger event]
### Competitive Position
[1 sentence "vs" summary using real names]
### Competitive Map
[Table with real competitor names filled in]
### Quick Positioning Test
- Specific: ✅/❌ [note]
- Differentiated: ✅/❌ [note]
- Credible: ✅/❌ [note]
- Meaningful: ✅/❌ [note]
- Memorable: ✅/❌ [note]
### Self-Critique Notes
[Any gaps, risks, or things to validate with real customers]
### Recommended Next Steps
- Run `homepage-audit` to test if current website reflects this positioning
- Run `content-idea-generator` with this ICP and differentiator as inputs
- Run `linkedin-authority-builder` anchored to this positioning
*Skill by Brian Wagner | AI Marketing Architect | brianrwagner.com*
Analyzes meeting transcripts and recordings to uncover behavioral patterns, communication insights, and actionable feedback. Identifies when you avoid conflict, use filler words, dominate conversations, or miss opportunities to listen. Perfect for professionals seeking to improve their communication and leadership skills.
Toolkit for creating animated GIFs optimized for Slack, with validators for size constraints and composable animation primitives. This skill applies when users request animated GIFs or emoji animations for Slack from descriptions like "make me a GIF for Slack of X doing Y".
Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.
Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like "make me a GIF of X doing Y for Slack.
A skill that creates new Claude skills and automatically shares them on Slack using Rube for seamless team collaboration and skill discovery.
Automate Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify, etc.) using agent-browser via Chrome DevTools Protocol. Use when the user needs to interact with an Electron app, automate a desktop app, connect to a running app, control a native app, or test an Electron application. Triggers include "automate Slack app", "control VS Code", "interact with Discord app", "test this Electron app", "connect to desktop app", or any task requiring automation of a native Electron application.
Prepare meeting materials with Notion context and Codex research; use when gathering context, drafting agendas/pre-reads, and tailoring materials to attendees.
Interactive daily standup/meeting update generator. Use when user says 'daily', 'standup', 'scrum update', 'status update', 'what did I do yesterday', 'prepare for meeting', 'morning update', or 'team sync'. Pulls activity from GitHub, Jira, and Claude Code session history. Conducts 4-question interview (yesterday, today, blockers, discussion topics) and generates formatted Markdown update.
Take brianrwagner/positioning-basics from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.