From pmm-positioning
Use for any positioning or messaging task — positioning statement, messaging hierarchy, homepage copy, sales persona cards, competitive deck, messaging audit, value proposition, tagline, elevator pitch, or when the user says "we sound like everyone else," "our messaging isn't landing," "sales can't explain what we do," or mentions April Dunford, Emily Kramer, or Obviously Awesome; runs the full Dunford sequence across five output modes (BUILD / AUDIT / FLETCH / SALES-ENABLEMENT / HOMEPAGE) with Pawel Huryn's self-improving memory loop. Parses attached screenshots and images before asking any questions, refuses briefs without a named primary persona and at least three alternatives including status quo, and blocks output until a 7-point self-verification gate passes.
How this skill is triggered — by the user, by Claude, or both
Slash command
/pmm-positioning:positioning-messagingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
---
Built on April Dunford's Obviously Awesome method. Output discipline from MKT1/Emily Kramer: deliver the answer, not the workings. Self-improving memory via Pawel Huryn's compounding loop.
Does /foundation/brain.md exist?
If YES:
If NO:
Parse every attached image immediately. Do not ask the user to describe it. Surface findings in Phase 1 as "What your current materials are saying" before any discovery questions.
Extract from any image:
[VISION FLAG] "exact text" — reason this is weakThe same extraction applies regardless of image type (homepage, deck slide, ad, competitor page, one-pager). Flag, don't describe.
Classify all inputs before Phase 2. Tier governs output weight.
| Tier | Qualifies as | Output rule |
|---|---|---|
| T1 | Verbatim customer quotes, win/loss transcripts, NPS verbatims, G2 reviews in buyer's words | Can anchor a pillar headline |
| T2 | Usage data, churn rates, win rates, A/B results, conversion data | Supports a pillar claim |
| T3 | Product descriptions, PMM assertions, founder hypotheses | Must carry [T3 — NEEDS VALIDATION] flag; cannot headline a pillar |
Refusal triggers:
[ROADMAP — NOT YET VALID]; excludeRefusal format:
"Can't proceed with [phase]. Missing: [evidence type]. Why it matters: [one sentence]. Provide: [exact format needed]."
Infer from context and confirm in one line, or ask.
| Mode | Output |
|---|---|
| BUILD | Positioning statement + full 4-layer messaging document |
| AUDIT | Scored audit + prioritised rewrite queue with before/after |
| FLETCH | 6-slide internal positioning deck + homepage wireframe |
| SALES-ENABLEMENT | Persona cards + competitive response guide |
| HOMEPAGE | Production-ready headline, subhead, pillars, CTA — no placeholders |
All modes run Phase 1–5. Phase 6 packages to mode format. Do not skip phases.
Run as a conversation. One question at a time. Never generate on the first message.
Hard floor — all four required before Phase 2:
If brain exists: Pre-fill from brain sections:
Ideal additions: T1 customer quotes · current messaging/screenshots · sales objections · win reasons · pricing model · company stage
Evidence tier on input:
[T3 — NEEDS VALIDATION]Exit: Summarise all four hard-floor items back to user. Await confirmation.
Identify primary segment energy state before mapping competitors.
| State | Buyer situation | Messaging job |
|---|---|---|
| M1 — Potential | No solution; desire blocked by barriers | Remove barriers; unlock demand |
| M2 — Kinetic | Doing it badly (spreadsheets, manual) | Redirect effort to the better path |
| M3 — Captured | Already using a solution of this type | Win share on one specific dimension |
Confirm with user. Primary positioning serves one state only. Multiple states require separate tracks — never mix in primary messaging.
Map all five alternative types honestly:
For each: what it does well / what it fails / what the buyer must believe to choose it.
Find the gap — intersection of: buyer cares deeply + product does well today + no alternative addresses it.
Exit: Complete before proceeding:
"For buyers who need [outcome], alternatives fail because [gap], and we address this with [specific capability today]."
Cannot complete it? The product has a positioning problem messaging cannot fix. Stop.
Generate 3–4 distinct positioning bets before committing to one direction. Each bet: the claim · target segment + energy state · primary risk · what it forces you to stop saying.
Present to user. Await selection. Do not proceed to Phase 3 without a chosen direction.
Dunford sequence:
"For [segment] who [situation], [product] is the [category] that [differentiator], unlike [alternative] which [limitation]."
Pick sharpest version. Exit: Statement cannot be said honestly by any named competitor. If it can, rewrite.
Build top-down. Layer 3 claims must trace to Layer 1. Cannot trace → remove.
Layer 1 — Strategic Narrative (150–250 words) Old world → Shift → New world → Your role. Product appears after the problem is fully established.
Layer 2 — Core Positioning Tagline 5–8 words · One-liner 15–25 · Elevator pitch 50–75 · Boilerplate 75–100
Layer 3 — Key Message Pillars (exactly 3–4, MECE) Each: headline claim + 2–3 sentence explanation + 2–3 proof points
Layer 4 — Persona Cards (1–3 max) Each: pain in their language · promise tied to their metric · 3 proof points · one objection pre-handled verbatim · stage-appropriate CTA
Exit: All layers complete. Persona CTAs match actual sales motion.
4-question test per differentiator. YES or NO only:
Scoring (no exceptions):
Binary pass/fail. If any check fails: re-enter the named phase, fix, re-run gate from top. Do not deliver with a caveat instead of a fix.
| Check | Pass condition | Fail → |
|---|---|---|
| Proof coverage | Every claim has T1/T2 or carries [T3] flag | Phase 4 |
| Narrative coherence | Layers 1→4 read as one story | Phase 4 |
| Competitor specificity | Statement cannot be said by any named competitor | Phase 3 |
| Stress-test integrity | All pillar headlines 4/4 | Phase 5 |
| Persona count | ≤ 3 | Phase 4 |
| Jargon | Zero: leverage, seamless, best-in-class, robust, turnkey, holistic, enterprise-grade, disruptive, synergy, game-changing, "powered by AI" as standalone claim | Fix inline |
| Vision flags | All [VISION FLAG] items addressed or documented as rejected | Positioning Traps section |
Before delivering, state: "Self-verification passed. [N]/7 checks clear."
BUILD — All 4 layers + stress-test table + approved/forbidden language + channel usage guide + positioning traps rejected + validation plan
AUDIT — 5-dimension score (specificity / differentiation / coherence / proof / buyer language) + P1/P2/P3 rewrite queue + before/after for P1 items
FLETCH — 6 slides: segment + trigger · alternatives map · gap · positioning statement · pillars + proof · homepage wireframe with copy
SALES-ENABLEMENT — Persona cards (pain / promise / proof / objection / CTA) + competitive playbook with "never say" column
HOMEPAGE — Hero headline <8 words · subhead <20 words · 3 pillar headlines
Approved language · Forbidden language + reason · Version + review date · Next steps for validation
After generating positioning output:
"Want to save this positioning to your brain memory? (yes/no)"
Why save:
If YES:
/foundation/brain.md Section 7last_positioning_output = [full positioning statement + messaging hierarchy]last_positioning_date = [timestamp]last_positioning_mode = [BUILD/AUDIT/FLETCH/etc.]If NO:
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub stefanoskarakasis/product-marketing-skills --plugin pmm-positioning