From solopreneur
Generates GTM strategy documents (brand, market landscape, messaging, channels) by scanning codebases and conducting multi-session user interviews. Supports initial research and git-diff updates.
npx claudepluginhub hanamizuki/solopreneur --plugin neo4j-devThis skill uses the workspace's default tool permissions.
A generic, codebase-driven GTM skill. Reads a repository, interviews the user across
Analyzes founder's business context to deliver 3 tailored go-to-market strategies for their stage, product, and market. Asks up to 10 diagnostic questions if needed on readiness, ICP, competition, channels. Use for GTM planning, launches, market entry.
Generates go-to-market strategies for product launches covering marketing channels, messaging, success metrics, and phased timelines. Use for new product planning or market entry.
Guides product launch execution with checklists, timelines, channel mixes (PR, paid, organic, email), and cross-functional coordination for new products or major features.
Share bugs, ideas, or general feedback.
A generic, codebase-driven GTM skill. Reads a repository, interviews the user across multiple sessions, and produces a complete set of strategy documents.
4 Markdown files in {repo}/docs/gtm/ plus a state file:
docs/gtm/
├── gtm-state.yaml # Session state (skill internal use)
├── 01-brand-strategy.md # Who we are
├── 02-market-landscape.md # The battlefield
├── 03-messaging-framework.md # How we talk
├── 04-channel-playbook.md # Where we show up
| Mode | Trigger | Description |
|---|---|---|
| Initial | No gtm-state.yaml exists | Deep research: codebase scan → multi-session interviews → draft → review |
| Update | gtm-state.yaml exists with status: complete | Weekly: scan git diff → confirm with user → update affected sections |
| Resume | gtm-state.yaml exists with status != complete | Continue from where the last session left off |
On first run, create docs/gtm/gtm-state.yaml:
project: {repo name}
repo_path: {absolute path}
created: {YYYY-MM-DD}
last_updated: {YYYY-MM-DD}
last_scan_commit: {commit hash}
status: scanning # scanning | interviewing | drafting | review | complete
phases:
scan:
status: pending # pending | in_progress | complete
depth: null # quick | standard | deep
completed_at: null
interview:
status: pending
current_topic: null # product | audience | competition | brand | channels
completed_topics: []
pending_topics:
- product
- audience
- competition
- brand
- channels
draft:
status: pending
completed_at: null
review:
status: pending
completed_at: null
# Accumulated findings from interviews (append after each session)
findings:
product: {}
audience: {}
competition: {}
brand: {}
channels: {}
At the start of every session:
gtm-state.yamlAfter each session:
findings with new informationlast_updatedgit add docs/gtm/ && git commit if they want a
checkpoint, but never run it for them.Ask the user first:
How well-documented is your codebase? A) Well-documented (good README, docs/) → Quick scan B) Partially documented → Standard scan C) Minimal documentation → Deep scan
Quick scan:
Standard scan:
Deep scan:
Output: Draft feature inventory saved to findings.product.features in state file.
Update state: phases.scan.status: complete
Present the feature inventory from Phase 0 and ask ONE question at a time. Wait for the user's response before asking the next question.
Questions (adapt based on what the codebase already revealed):
"I found these features/modules in your codebase: [list]. Is anything missing — especially features that are planned or in development?"
"What stage is the product at?"
"What's your current primary goal?"
"In one sentence, how would you explain what this product does to a stranger?"
"What's the single most important thing your product does better than anything else out there?"
After each answer, briefly summarize your understanding and confirm before moving on.
Update state: phases.interview.completed_topics: [product], save findings.
This is the most important phase. Push for specificity — categories are not people.
Questions:
"Describe your most typical user. Not a category — a person. What's their situation? Why did they come to your product?"
"Are there other distinct types of users? Describe 1-2 more if they exist."
"Before your product existed, how did these people solve this problem? What did that workaround look like day-to-day?"
"Have you directly heard users describe their pain points? What did they actually say — their exact words?"
"Has any user used your product in a way you didn't expect? What surprised you?"
"If your product disappeared tomorrow, who would be most upset? Why?"
Update state: phases.interview.completed_topics: [product, audience], save findings.
This phase happens AFTER Product + Audience because we now know what to search for.
Step 1: Ask the user
"What do you consider your direct competitors? (Other products solving the same problem for the same people)"
"What's their biggest weakness, from your users' perspective?"
"What's the one thing about your product that competitors can't easily copy?"
Step 2: Online research
Search the web for:
Read top 3-5 results. For each competitor found:
Step 3: Synthesize
Present findings to the user:
Update state: phases.interview.completed_topics: [product, audience, competition], save findings.
Questions:
"If your product were a person walking into a room, how would others describe them?"
"Is there a brand whose tone you admire and want to emulate? Why?"
"What style or tone is absolutely off-limits for your brand?"
"What emotional state are your users in when they interact with your product? (anxious? curious? frustrated? hopeful?)"
"What are the 3-5 values your brand stands for? Not aspirational — things you actually practice."
Update state: phases.interview.completed_topics: [product, audience, competition, brand], save findings.
Questions:
"Where do your users spend their time online? Which platforms, communities, forums?"
"Where do they go when they have questions about the problem your product solves?"
"Which platforms do you currently have a presence on? How's it going?"
"Are there any platforms you've tried and abandoned, or deliberately avoiding? Why?"
Update state: phases.interview.completed_topics: [product, audience, competition, brand, channels], save findings.
Generate all 4 documents based on accumulated findings. Follow the templates below.
Present to user:
"I've drafted all 4 GTM documents. Would you like to: A) Review them one by one B) Review all at once C) Focus on a specific document"
Iterate based on feedback. When the user approves:
status: complete, phases.review.completed_at: {date}docs/gtm/ directory in one commit — but do not run git commit
automatically.When gtm-state.yaml exists with status: complete:
git rev-parse --is-inside-work-tree).
git log --oneline --since="7 days ago" (or since
last_scan_commit) to detect code changes automatically."Since last scan, I see these codebase changes: [list]. Any strategic direction changes this week?"
last_updated in state file. If using git, also update
last_scan_commit with the current HEAD commit hash. Save only —
do not auto-commit.# Brand Strategy
> Generated by GTM skill · Last updated: {date}
## 1. Product Profile
### What It Does
{One paragraph: what the product is and the core problem it solves}
### Core Features
{Table: Feature | Description | Platform | Status (shipped/beta/planned)}
### Value Transformation
**Input:** {What the user brings — data, time, effort}
**Magic:** {What the product does with it}
**Output:** {What the user gets — outcome, feeling, capability}
## 2. Stage & Traction
### Current Stage
{Pre-launch / Early users / Paying customers / Growth}
### Primary Goal
{What the team is focused on right now}
### Honest Assessment
{Strengths and weaknesses, stated directly. What's working, what's not, what's risky.}
## 3. Brand Foundation
### Mission
{Why we exist — one sentence}
### Vision
{Where we're going — one sentence}
### Values
{3-5 values, each with a one-line "why" and a concrete example}
### Brand Promise
{What we guarantee to our users — one sentence}
## 4. Brand Personality
### Character
{A paragraph describing the brand as a person — personality, backstory if relevant, how they make people feel}
### Personality Axes
| Axis | Position | Notes |
|------|----------|-------|
| Funny ↔ Serious | {position} | {brief explanation} |
| Formal ↔ Casual | {position} | |
| Respectful ↔ Irreverent | {position} | |
| Enthusiastic ↔ Matter-of-fact | {position} | |
### Three Words
{Three words that summarize the brand personality}
## 5. Positioning (Dunford Framework)
### Competitive Alternatives
{What users do today instead of using our product}
### Key Unique Attributes
{What we have that alternatives don't}
### Differentiated Value
{The value those attributes create for users}
### Best-Fit Customers
{Who cares most about that value}
### Market Category
{The category we compete in — or are creating}
### Positioning Statement
{For [best-fit customers] who [need/struggle], [product] is a [category] that [key differentiated value]. Unlike [alternatives], we [unique attribute].}
# Market Landscape
> Generated by GTM skill · Last updated: {date}
## 1. Target Audience
### ICP Archetypes
#### Archetype 1: {Name}
*{One-line description}*
| Field | Detail |
|-------|--------|
| Situation | {Who they are, what stage they're in} |
| Goal | {What they're trying to achieve} |
| Pain Points | {What frustrates them — specific, behavioral} |
| JTBD | {When I [situation], I want to [motivation], so I can [outcome]} |
| Current Workaround | {How they solve this today without our product} |
| Best Message | {The one sentence that would stop them scrolling} |
{Repeat for each archetype — typically 3-5}
### Cross-Cutting Behaviors
{Behaviors shared across archetypes — e.g., price sensitivity, community reliance, privacy concerns}
### User Journey Map
{Stages from awareness → first use → habit → advocacy, with emotional state at each stage}
## 2. Voice of Customer
### Pain Points & Frustrations
{Direct quotes from users — their actual words, not your summary}
### Positive Signals
{What users say when the product is working for them}
### Search Queries
{What users type into Google/Reddit/forums when looking for solutions}
## 3. Competitive Analysis
### Market Gaps
{What no one in the market is doing well — the opportunities}
### Direct Competitors
#### {Competitor Name} — {URL}
{One-line description}
**Strengths:** {bullets}
**Weaknesses:** {bullets}
**Differentiation vs Us:** {How we're specifically different — not a feature list, an insight}
{Repeat for each competitor}
### Status Quo Spectrum
| Stage | Method | Friction |
|-------|--------|---------|
| Do Nothing | {How people cope without any tool} | {What's painful about it} |
| DIY Stacked | {Cobbled-together tool combinations} | {Why it breaks down} |
| Point Solutions | {Dedicated tools in this space} | {Where they fall short} |
| Full Service | {Agencies, services, premium solutions} | {Why it's not ideal} |
## 4. Differentiation Matrix
| Capability | Us | {Competitor A} | {Competitor B} | {Competitor C} |
|-----------|-----|----------------|----------------|----------------|
| {capability 1} | ✅ | ⚠️ | ❌ | ❌ |
| {capability 2} | ... | ... | ... | ... |
# Messaging Framework
> Generated by GTM skill · Last updated: {date}
## 1. Value Proposition
{One sentence that captures what we offer and why it matters}
### Tagline Candidates
{3-5 short taglines — punchy, memorable, testable}
## 2. Messaging Pillars
### Pillar 1: {Name}
**Theme:** {What this pillar is about}
**Proof Points:** {Evidence from the product — features, data, user stories}
**Example Messages:**
- {Social post angle}
- {Landing page headline}
- {Email subject line}
### Pillar 2: {Name}
{Same structure}
### Pillar 3: {Name}
{Same structure}
{3-5 pillars total}
## 3. Per-ICP Messaging
### {Archetype 1 Name}
| Element | Message |
|---------|---------|
| Hook | {What grabs their attention — speaks to their specific pain} |
| Value | {What we promise — specific to their situation} |
| Proof | {Why they should believe us — evidence they'd find credible} |
### {Archetype 2 Name}
{Same structure}
{Repeat for each ICP archetype}
## 4. Voice & Tone
### Primary Tone
{4-5 descriptors with brief explanations}
### Avoid
{What we never sound like — specific anti-patterns, not just "don't be boring"}
### Do / Don't Examples
| Context | Do ✅ | Don't ❌ |
|---------|-------|---------|
| {situation 1} | {good example} | {bad example} |
| {situation 2} | {good example} | {bad example} |
### Scene Examples
{Per-context voice calibration — how the tone shifts across different touchpoints}
| Context | Posture | Length | Personality Level | Key Rule |
|---------|---------|--------|-------------------|----------|
| Social media post | {description} | {range} | {low/med/high} | {one rule} |
| App UI copy | {description} | {range} | {low/med/high} | {one rule} |
| Customer support | {description} | {range} | {low/med/high} | {one rule} |
| Marketing email | {description} | {range} | {low/med/high} | {one rule} |
### Brand Guardrails
{Non-negotiable rules — legal, ethical, or brand-critical constraints}
## 5. Content Pillars
### Pillar 1: {Name}
**What:** {Description of this content theme}
**Why it works:** {Which ICPs it serves, which JTBDs it addresses}
**Example topics:** {3-5 specific content ideas}
{Repeat for each pillar — typically 3-5}
# Channel Playbook
> Generated by GTM skill · Last updated: {date}
## 1. Platform Selection
| Platform | Why | Complexity | Priority |
|----------|-----|-----------|----------|
| {platform} | {rationale tied to ICP behavior} | {1-5} | {P0/P1/P2} |
## 2. Per-Platform Strategy
### {Platform Name}
#### Format & Vibe
{What content looks like here, what the culture expects}
#### Algorithm DNA
{How content gets distributed — what the platform rewards}
#### Operational Playbook
1. {Step 1 — what to monitor}
2. {Step 2 — what to track}
3. {Step 3 — how to engage}
4. {Step 4 — how to measure}
#### Growth Vectors
| Vector | Strength | Why | Actions |
|--------|----------|-----|---------|
| Communities | {Low/Med/High} | {explanation} | {what to do} |
| ICP Content | {Low/Med/High} | {explanation} | {what to do} |
| Founder/Brand | {Low/Med/High} | {explanation} | {what to do} |
| Competitor | {Low/Med/High} | {explanation} | {what to do} |
| Intent Search | {Low/Med/High} | {explanation} | {what to do} |
#### Key Communities / Accounts
{Specific groups, hashtags, influencers, forums to watch and engage with}
{Repeat for each platform}
## 3. Keyword Clusters
### Pain Points
| Keyword |
|---------|
| {keyword related to user frustrations} |
### ICP Identifiers
| Keyword |
|---------|
| {keyword that signals someone is our target user} |
### JTBD Terms
| Keyword |
|---------|
| {keyword related to jobs users are trying to do} |
### Competitor Complaints
| Keyword |
|---------|
| {keyword related to competitor dissatisfaction} |
## 4. Post Strategy
### Primary Goal
{What we're optimizing for — awareness, installs, trust, community}
### Content Pillar → Platform Mapping
| Content Pillar | Best Platforms | Format | Frequency |
|---------------|---------------|--------|-----------|
| {pillar} | {platforms} | {format} | {cadence} |
## 5. Reply Strategy
### Target Communities
{Where to engage in conversations — specific groups, threads, hashtags}
### KOL Targets
{Key opinion leaders to follow, engage with, and build relationships with}
### Engagement Rules
{How to show up — add value, don't sell; match the vibe; when to stay silent}