elliot-stack 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/install.cjs CHANGED
@@ -350,7 +350,7 @@ async function main() {
350
350
  for (const name of skillNames) {
351
351
  if (modifiedSkills.includes(name)) {
352
352
  if (modifiedAction === 'skip') {
353
- console.log(' Skipped estack-' + name + ' (local modifications preserved)');
353
+ console.log(' Skipped ' + name + ' (local modifications preserved)');
354
354
  const currentHash = computeSkillHash(path.join(SKILLS_DIR, name));
355
355
  if (currentHash) newChecksums[name] = currentHash;
356
356
  continue;
@@ -358,7 +358,7 @@ async function main() {
358
358
  if (modifiedAction === 'merge') {
359
359
  backupSkill(name);
360
360
  mergedSkills.push(name);
361
- console.log(' Backed up estack-' + name + ' → ~/.claude/.estack-backup/' + name);
361
+ console.log(' Backed up ' + name + ' → ~/.claude/.estack-backup/' + name);
362
362
  }
363
363
  // overwrite or merge — fall through to install
364
364
  } else if (!needsUpdate.includes(name) && fs.existsSync(path.join(SKILLS_DIR, name))) {
@@ -368,7 +368,7 @@ async function main() {
368
368
  copyDir(path.join(PACKAGE_SKILLS_DIR, name), path.join(SKILLS_DIR, name));
369
369
  newChecksums[name] = packageHashes[name];
370
370
  installedCount++;
371
- console.log(' Installed estack-' + name);
371
+ console.log(' Installed ' + name);
372
372
  }
373
373
 
374
374
  // 9. Write checksums
@@ -384,7 +384,7 @@ async function main() {
384
384
 
385
385
  for (const name of skillNames) {
386
386
  const desc = getSkillDescription(path.join(PACKAGE_SKILLS_DIR, name));
387
- console.log(' /estack-' + name + (desc ? ' — ' + desc : ''));
387
+ console.log(' /' + name + (desc ? ' — ' + desc : ''));
388
388
  }
389
389
 
390
390
  if (mergedSkills.length > 0) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "elliot-stack",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Elliot's skill stack for Claude Code — install via npx elliot-stack@latest",
5
5
  "bin": {
6
6
  "elliot-stack": "bin/install.cjs"
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: better-title
2
+ name: estack-better-title
3
3
  description: Suggest better chat session titles and rename the session
4
4
  disable-model-invocation: true
5
5
  allowed-tools: Bash, AskUserQuestion
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: chris-voss
2
+ name: estack-chris-voss
3
3
  description: >
4
4
  Applies Chris Voss negotiation principles from *Never Split the Difference* to any situation
5
5
  where understanding human psychology, persuasion, or influence would improve the output. Use
@@ -0,0 +1,52 @@
1
+ ---
2
+ name: customer-discovery
3
+ description: Guide users through customer discovery — validating business ideas, identifying target customers, crafting outreach, preparing interview questions, and analyzing interview results. Use this skill whenever the user mentions customer discovery, customer interviews, validating an idea, market research, finding product-market fit, talking to customers, outreach messages, interview guides, or analyzing customer feedback. Also use when someone says they have a business idea and want to test it, or when they're preparing to talk to potential customers.
4
+ ---
5
+
6
+ # Customer Discovery
7
+
8
+ This skill guides users through the full customer discovery process, or any specific part of it. Customer discovery is a detective exercise — you're confirming or denying assumptions, not selling or pitching.
9
+
10
+ ## The flow
11
+
12
+ There are 4 steps. Each builds on the last, but the user can jump to any step directly.
13
+
14
+ 1. **Strategy & Targeting** — Define who you're talking to, what you're testing, and why. Map assumptions, define customer segments, frame the job-to-be-done.
15
+ 2. **Outreach** — Craft messages that get people to say yes to a conversation. Warm intros first, then cold outreach using proven formulas.
16
+ 3. **Interview Execution** — Build a tailored interview guide with the right questions (behavioral, story-eliciting) and avoid the wrong ones (speculative, leading). Prepare to run great interviews.
17
+ 4. **Analysis & Signals** — Make sense of what you heard. Spot patterns, rank problems, identify progression signals, and decide what to do next.
18
+
19
+ ## How to use this skill
20
+
21
+ ### Step 1: Figure out what the user needs
22
+
23
+ Ask the user: do they want to go through the full flow, or do they need help with a specific step?
24
+
25
+ If they describe their situation without picking a step, route them based on where they are:
26
+ - Have an idea but haven't talked to anyone yet → Start at **Step 1: Strategy & Targeting**
27
+ - Know who to talk to but need help reaching out → **Step 2: Outreach**
28
+ - Have interviews scheduled but need questions → **Step 3: Interview Execution**
29
+ - Have done interviews and need to make sense of them → **Step 4: Analysis & Signals**
30
+
31
+ ### Step 2: Read the right step file
32
+
33
+ Each step has its own workflow file with detailed instructions. Read the one you need:
34
+
35
+ - **Step 1: Strategy & Targeting** → Read `steps/step-1-strategy.md`
36
+ - **Step 2: Outreach** → Read `steps/step-2-outreach.md`
37
+ - **Step 3: Interview Execution** → Read `steps/step-3-interviews.md`
38
+ - **Step 4: Analysis & Signals** → Read `steps/step-4-analysis.md`
39
+
40
+ The step file will tell you to also read the corresponding reference document. The reference docs are the source of truth — they contain the principles and frameworks. The step files tell you how to work through them with the user.
41
+
42
+ ### Step 3: Be adaptive
43
+
44
+ Read the room. If the user clearly knows what they're doing, don't over-explain. If they're new to this, coach them. Adjust your depth and pacing based on how they talk about their idea.
45
+
46
+ ### Step 4: Offer deliverables
47
+
48
+ At the end of each step, offer to produce a written summary the user can reference later. Don't force it — some users just want the conversation.
49
+
50
+ ### Step 5: Continue the flow
51
+
52
+ After completing a step, offer to continue to the next one by name (e.g., "Would you like to continue to **Step 3: Interview Execution**?"). Never reference a step by number alone — always include the name so the user knows what it covers. If the user jumped into a specific step, still offer the next step — they might want to keep going.
@@ -0,0 +1,125 @@
1
+ # Customer Discovery: Strategy & Targeting
2
+
3
+ ## The mindset
4
+
5
+ Customer discovery is a detective exercise. You're confirming or denying your assumptions. You're not selling, not pitching, not asking customers to design your product. You're there to learn.
6
+
7
+ Fall in love with the problem, not the solution.
8
+
9
+ Every business is a stack of assumptions. Your job is to test the high-impact, high-uncertainty ones before investing heavily.
10
+
11
+ You're an intelligent filter, not an order-taker. Discovery informs decisions, it doesn't make them. Vision still leads.
12
+
13
+ Don't talk to anyone with a pulse. Target the specific customer you think has the problem.
14
+
15
+ Everyone on the team should talk to customers. Not just the designer or the founder.
16
+
17
+ ## The 4 reasons companies buy
18
+
19
+ Every B2B purchase maps to one of these:
20
+ - Make money
21
+ - Save money
22
+ - Gain competitive advantage
23
+ - Avoid compliance or risk
24
+
25
+ Map every pain point you hear to one of these. If it doesn't tie to one, the purchase is unlikely.
26
+
27
+ ## Map your assumptions first
28
+
29
+ Answer these before you interview anyone:
30
+ - Who is my target customer?
31
+ - What problem do they want to solve?
32
+ - Why can't they solve it today?
33
+ - What measurable outcome do they want?
34
+ - Who is my earliest adopter?
35
+ - How will I acquire customers?
36
+ - How will I make money?
37
+ - Who is my primary competition and why will I beat them?
38
+ - What assumption, if proven wrong, would kill this?
39
+
40
+ Mark the ones that are both high-impact and highly uncertain. Those are your interview priorities.
41
+
42
+ ## Define your customer segment
43
+
44
+ "Everyone" is not a customer. Get specific: job, role, mindset, context.
45
+
46
+ Not "marketing managers." Try "marketing managers at 50–200 person B2B SaaS companies who own the content pipeline and report to the VP of Marketing."
47
+
48
+ Pick one narrow segment and one specific job to solve first.
49
+
50
+ Define three audiences:
51
+ 1. Typical customer at scale (who you'll serve once you're big)
52
+ 2. Early adopter (feels the pain acutely, loves trying new things, interview first)
53
+ 3. Critical distribution or fulfillment partners
54
+
55
+ ## B2B buyer landscape
56
+
57
+ Map every role involved in the purchase:
58
+ - **User**: who actually uses the product
59
+ - **Buyer**: who signs the contract
60
+ - **Payer**: who controls the budget
61
+ - **Technical buyer**: who evaluates fit
62
+ - **Economic buyer**: who approves the spend
63
+ - **Strategic buyer**: who owns the outcome
64
+ - **Influencer / recommender**: who shapes the decision
65
+
66
+ Start with mid-level managers, not C-suite. Easier access, more conversations, and you'll be better educated before going up the chain. Influencers and recommenders are especially valuable because they connect you to more customers.
67
+
68
+ ## Jobs-to-be-done framing
69
+
70
+ Define the job as the specific problem they're trying to solve in a specific situation.
71
+
72
+ Include three layers:
73
+ - Functional needs (what they need to get done)
74
+ - Emotional needs (how they want to feel)
75
+ - Social needs (how they want to be seen)
76
+
77
+ Describe the problem in the customer's own words, not founder language. Pull phrasing from forums, Reddit, and actual conversations.
78
+
79
+ ## Validating the problem
80
+
81
+ The problem needs to be:
82
+ - **Important** to the customer
83
+ - **Unsatisfied** by current options
84
+ - **High-value** enough that they'd pay for a better solution
85
+
86
+ If any of the three fails, it's not worth solving first.
87
+
88
+ Identify what they do today instead of your solution. Existing alternatives matter. DIY workarounds are strong signals of real need.
89
+
90
+ Distinguish primary from secondary problems. Solve the pain that matters most.
91
+
92
+ ## Finding interview subjects
93
+
94
+ Three rules:
95
+ 1. One degree of separation. Don't interview close friends or family.
96
+ 2. Be creative. Don't expect people to come to you.
97
+ 3. Fish where the fish are. If a tactic isn't working, switch immediately.
98
+
99
+ Tactics:
100
+ - End every interview with a goal of 2–3 new referrals
101
+ - LinkedIn search by title, reach out via referral or cold
102
+ - Call the CEO's office, ask the EA for "the person who handles X." They route you. Then name-drop the CEO's office in follow-up.
103
+ - Find people at their moment of pain (conferences, relevant forums, events)
104
+ - At conferences: ask for time after, not during. Follow up while memory is fresh.
105
+ - You're a student. Say so. It's an advantage. Offer to share research results.
106
+ - Start with warm intros before cold outreach. Always exhaust that first.
107
+
108
+ Default to asking for advice early on. "I'm not selling anything, I just want 20 minutes." People like being asked. It makes them feel important.
109
+
110
+ ## No surveys. Period.
111
+
112
+ Don't use surveys. Not for discovery, not for recruiting, not for screening.
113
+
114
+ Why:
115
+ - You need the customer's exact words, context, workflow, and emotions
116
+ - Early-stage discovery is about uncovering the real problem, not confirming your assumptions
117
+ - Conversations let you probe, clarify, and discover unexpected needs
118
+ - Surveys flatten nuance and kill follow-up
119
+ - They're noisy and usually poorly designed
120
+ - Stronger proof points come from hearing pain, dissatisfaction with current alternatives, and actual purchase intent directly
121
+
122
+ The right path:
123
+ - Use quick research or LLMs to learn the space
124
+ - Do primary research through live customer conversations
125
+ - Document pain points and proof points in their own words
@@ -0,0 +1,71 @@
1
+ # Customer Discovery: Outreach
2
+
3
+ Cold outreach fails because it reads like outreach. Yours needs to feel like a human asking a human for a small favor.
4
+
5
+ One rule above all: be completely honest about who you are and why you're reaching out. Nothing here is about tricking anyone. It's about removing friction so the right people say yes.
6
+
7
+ ## Warm intros first. Always.
8
+
9
+ A mutual connection asking on your behalf will always outperform cold. Exhaust warm intros before sending a single cold message.
10
+
11
+ If you're not finding people, it's rarely "I don't know how." It's usually fear of rejection in disguise. Send more messages. Faster.
12
+
13
+ ## The 2-sentence formula
14
+
15
+ Two sentences. That's it.
16
+
17
+ **Sentence 1: Their job to be done.**
18
+ Lead with a specific problem they likely deal with. Not your idea. Not your product. Make it relatable enough that they instantly recognize it. Hint at the problem, don't explain your solution.
19
+
20
+ **Sentence 2: The honest ask.**
21
+ Say exactly who you are and what you want. Ask for a specific time, not "sometime next week."
22
+
23
+ No-oriented close: "Would it be crazy to ask for 15 minutes tomorrow at 3pm?"
24
+
25
+ On LinkedIn you have 300 characters. Use every technique that fits.
26
+
27
+ ## Example outreach
28
+
29
+ **Simple version:**
30
+
31
+ > I'm working to better understand how software sales leaders handle pricing when customer value varies so much across deals. Could you do a 15-minute call tomorrow at 6pm to share how you approach it?
32
+
33
+ **Stacked version (LinkedIn note, 300 chars):**
34
+
35
+ > Hi Kendall. I'm a student at Purdue researching marketing workflows at B2B companies for a concept competition. Exploring AI's impact on team workflows.
36
+ >
37
+ > I ONLY need 10 interviews by Friday to move on to the next phase!
38
+ >
39
+ > Would it be crazy to ask for 15 minutes of your time?
40
+ >
41
+ > \- Elliot
42
+
43
+ This converted at 10%. 1 in 10 cold strangers agreed to a call.
44
+
45
+ ## The 12 tricks that make it work
46
+
47
+ 1. **Lead with their world.** Open with a problem they recognize, not a pitch they have to decode.
48
+ 2. **Zero threat.** "Student" + "concept competition" signals nothing is for sale. Guard drops immediately.
49
+ 3. **Complete honesty.** Be upfront about who you are and what you want. People respond to realness.
50
+ 4. **Tiny ask.** 15 minutes doesn't feel like a decision.
51
+ 5. **Specific time.** "Tomorrow at 6pm" creates urgency. "Sometime next week" gets ignored.
52
+ 6. **Scarcity.** A cap + deadline makes them feel like a limited slot, not one of a thousand targets.
53
+ 7. **Hard deadline.** "By Friday" forces action now. Later always becomes never.
54
+ 8. **Visual interrupt.** Capitalizing ONLY pulls the eye straight to the scarcity line.
55
+ 9. **No-oriented close.** Saying no means agreeing it's crazy. Path of least resistance is yes.
56
+ 10. **Curiosity gap.** Specific enough to be relevant, vague enough that they want to know more.
57
+ 11. **Human format.** First-name opener, personal sign-off. No links, no title.
58
+ 12. **No pitch.** No ask to buy, no demo, no product link. Pure curiosity.
59
+
60
+ ## What to avoid
61
+
62
+ - Long paragraphs
63
+ - Leading with features or your product concept
64
+ - Multiple value props crammed in
65
+ - Vague asks like "sometime next week"
66
+ - Anything misleading about who you are
67
+ - Framing that looks like sales
68
+
69
+ ## Keep testing
70
+
71
+ Test lots of versions. Tone, opening line, specific time, deadline. Small tweaks move conversion more than you'd expect.
@@ -0,0 +1,98 @@
1
+ # Customer Discovery: Interview Execution
2
+
3
+ ## Prepare an interview guide
4
+
5
+ Always write one. It's a guide, not a script. Veer off when something interesting comes up.
6
+
7
+ Structure:
8
+ - Brief intro explaining purpose
9
+ - 1–2 warm-up questions
10
+ - Story-eliciting behavioral questions
11
+ - Drill-down follow-ups
12
+ - Close: "What should I have asked you that I didn't?"
13
+
14
+ Set pass/fail metric targets before you start. Know what you're hoping to see. Write it down.
15
+
16
+ Don't wing it. No prepared, prioritized questions = wasted conversation.
17
+
18
+ Don't try to learn everything in one session. Go deep on a few areas instead.
19
+
20
+ ## Format priorities
21
+
22
+ In-person is best. Video is second. Phone is last resort. Never text or email.
23
+
24
+ One person at a time. No focus groups. Group think contaminates answers.
25
+
26
+ Bring a note taker if possible. Stay present during the conversation. If you're solo, write notes immediately after. Detail fades fast.
27
+
28
+ ## The most important rule: stories, not speculation
29
+
30
+ Humans are terrible at predicting their own behavior. "Would you use this?" and "Would you buy this?" answers are weak on their own.
31
+
32
+ Ask about the past instead:
33
+ - "Tell me about the last time you..."
34
+ - "Walk me through how you..."
35
+ - "What triggered your search for a solution?"
36
+ - "What happened after you tried it?"
37
+
38
+ Past behavior is the strongest predictor of future behavior.
39
+
40
+ ## Ask open-ended questions
41
+
42
+ Start with: who, what, why, how.
43
+
44
+ Avoid: is, are, would, do you.
45
+
46
+ Don't rush to fill silence. Let them sit. Gold comes out in the pause.
47
+
48
+ ## Drill down relentlessly
49
+
50
+ Whenever something tweaks your antenna, go deeper. Multiple layers of "why."
51
+
52
+ Parrot back what they said. They'll either correct your misinterpretation or refine their own thinking.
53
+
54
+ ## Look for solution hacks
55
+
56
+ If someone has DIY-solved the problem or cobbled together a workaround, that's one of the strongest market-need signals you can get. Nobody builds workarounds for problems they don't feel.
57
+
58
+ ## Test for priority
59
+
60
+ Even if the problem exists, it needs to be acute enough to change behavior and justify payment.
61
+
62
+ Ask where it ranks in their list of problems. Ask what they're spending time on this week vs. this. If the pain isn't top-5, it's probably not getting solved.
63
+
64
+ ## Pricing questions
65
+
66
+ Speculative pricing is unreliable. "Would you pay $X?" answers mean almost nothing on their own.
67
+
68
+ Better:
69
+ - Ask what they currently spend to address this problem
70
+ - Ask what budget exists and who controls it
71
+ - Create situations where they think they're actually buying. People only honestly consider willingness to pay when it feels like a real transaction.
72
+
73
+ ## Handling prototypes
74
+
75
+ If you're showing something:
76
+ - Behavior questions first, product feedback second. People love talking features and it'll contaminate their stories.
77
+ - Explicitly ask for brutal honesty upfront
78
+ - Don't trust verbal "I like it." Watch behavior. Try to get them to open their wallet.
79
+
80
+ ## Disarm your own bias
81
+
82
+ Go in ready to hear things you don't want to hear.
83
+
84
+ Adopt a "try to kill the idea" mindset for interviews. It works.
85
+
86
+ A dedicated note-taker helps. Interviewers filter for what they believe. Note-takers catch what you miss.
87
+
88
+ Don't lead the witness. Don't embed the answer in how you ask.
89
+
90
+ Don't pitch. Don't hear only what you want to hear. Don't treat one conversation as truth.
91
+
92
+ ## Close every interview with this
93
+
94
+ "What should I have asked you that I didn't?"
95
+
96
+ Then: "Who else should I talk to?"
97
+
98
+ Goal: 2–3 referrals per conversation.
@@ -0,0 +1,143 @@
1
+ # Customer Discovery: Analysis & Signals
2
+
3
+ ## How to take notes
4
+
5
+ Top of every note doc:
6
+ - Subject name
7
+ - Date
8
+ - Interviewer(s)
9
+ - Format (in-person, video, phone)
10
+ - Photo if possible
11
+ - Brief descriptive info about the subject
12
+
13
+ Capture direct quotes and the story. Not your interpretations.
14
+
15
+ ## Convert notes to metrics
16
+
17
+ Calculate percentages across interviews. Numbers fight cognitive bias.
18
+
19
+ Don't obsess over single numbers. Don't treat qualitative results as statistical fact. Keep questioning what's behind the numbers.
20
+
21
+ ## Dump and sort exercise
22
+
23
+ Team exercise, 10 minutes:
24
+ 1. Everyone writes patterns they noticed on sticky notes
25
+ 2. Put them on a wall
26
+ 3. Sort into groups
27
+ 4. Discuss what clusters and what doesn't
28
+ 5. Re-review assumptions. See what needs to change.
29
+
30
+ Do this every 5–10 interviews.
31
+
32
+ ## Pattern recognition thresholds
33
+
34
+ A clear pattern across 5–10 people is a signal.
35
+
36
+ Even 5 consistent responses can reveal a valid pattern if the responses are tight.
37
+
38
+ Don't overreact to one conversation. Don't wait for statistical significance either. Move fast from credible patterns. Analysis paralysis is the enemy.
39
+
40
+ ## Stickiness as a signal
41
+
42
+ The strongest signal isn't "they liked it." It's whether they'd be genuinely upset if the product disappeared.
43
+
44
+ If you could yank it away and they wouldn't care, you don't have stickiness yet. Keep digging for what would actually hurt them to lose.
45
+
46
+ Don't stop at "they liked it." Identify the specific value they got and why they care.
47
+
48
+ ## Progression signals to watch for
49
+
50
+ Signal gets stronger at each step:
51
+ 1. They describe the pain clearly and unprompted
52
+ 2. They say they'd buy a solution
53
+ 3. They ask how to buy it now
54
+
55
+ Level 3 is gold. Level 2 counts. Level 1 alone isn't enough.
56
+
57
+ Also strong:
58
+ - They've DIY-hacked their own solution
59
+ - They're currently paying for a partial workaround
60
+ - They can tell you their existing budget and who controls it
61
+
62
+ ## The Truth Curve
63
+
64
+ Each level yields more reliable truth, at higher cost:
65
+ 1. Conversations
66
+ 2. Paper test (landing page, deck, concept test)
67
+ 3. Prototype
68
+ 4. Live product (real behavior, real money)
69
+
70
+ Start at the cheap end. Build confidence iteratively. Concierge or Wizard-of-Oz experiments (manually faking the product) beat interviews because you watch actual behavior.
71
+
72
+ ## Interview count target
73
+
74
+ **Goal: 10–20 interviews.**
75
+
76
+ Patterns often show up fast. Even 5 consistent responses can reveal a signal. Top student teams typically talk to 20–30.
77
+
78
+ If you hit 20 without patterns emerging, your segment or hypothesis is probably off. Rethink before interviewing more.
79
+
80
+ ## Primary vs secondary problems
81
+
82
+ Not every problem you hear is the one you should solve.
83
+
84
+ After interviews, force-rank the problems by:
85
+ - How often they came up
86
+ - How intense the emotion was
87
+ - How willing people were to act on them
88
+ - How much money or time they were already spending
89
+
90
+ Solve the #1 problem. Don't get distracted by #3.
91
+
92
+ ## Before vs after lens
93
+
94
+ For each problem you might solve, sketch:
95
+ - What does the customer's world look like today?
96
+ - What does it look like after your solution exists?
97
+ - What specifically changes: cost, revenue, time, trust, peace of mind, compliance risk?
98
+
99
+ Quantify wherever possible. Is your solution 1% better, 50% better, 3x better, 10x better? Aim for multiples, not percentages.
100
+
101
+ ## Real user vs real decision-maker
102
+
103
+ These are often different people.
104
+
105
+ The user feels the pain. The decision-maker signs off.
106
+
107
+ Map both. Interview both if you can. A product users love but economic buyers won't approve doesn't ship.
108
+
109
+ ## Confidence vs impact framework
110
+
111
+ After patterns emerge, list every assumption left.
112
+
113
+ Rank them on two axes:
114
+ - How confident are you? (low to high)
115
+ - How badly does the business hurt if you're wrong? (low to high)
116
+
117
+ Test low-confidence, high-impact first. Those are your biggest risks.
118
+
119
+ Apply this across the whole model: customer segment, value prop, channels, revenue, costs, differentiation, success metrics.
120
+
121
+ ## False positives
122
+
123
+ People want to be nice. Weight positive reactions with skepticism.
124
+
125
+ "I love it" means nothing without behavior to back it up.
126
+
127
+ Watch what they do, not what they say.
128
+
129
+ ## When to transition from discovery to selling
130
+
131
+ **Trigger: you start hearing the exact same thing, interview after interview.**
132
+
133
+ That's pattern saturation. Shift from discovery to offering a solution. Start testing whether it's burning pain they'll pay to solve or mild discomfort they'll live with.
134
+
135
+ Don't wait for a perfect sample size. Hit the trigger, move.
136
+
137
+ ## You're never fully done
138
+
139
+ Customer discovery is ongoing. Qualitative research is permanent in good companies.
140
+
141
+ When patterns flatten, evolve what you're exploring. The questions change. The cadence shouldn't stop.
142
+
143
+ Worst thing you can do: stop talking to customers after week one.
@@ -0,0 +1,78 @@
1
+ # Step 1: Strategy & Targeting
2
+
3
+ ## Before anything else
4
+
5
+ Read `references/01-strategy-and-targeting.md` in the skill directory. That's your source of truth for this step. Internalize it before working with the user.
6
+
7
+ ## What this step accomplishes
8
+
9
+ Help the user get clear on who they're talking to, what they're testing, and what assumptions carry the most risk. By the end, they should have a sharp customer segment, a clear job-to-be-done, and a prioritized list of assumptions to test in interviews.
10
+
11
+ ## How to work through this with the user
12
+
13
+ ### Understand their idea
14
+
15
+ Start by asking the user to describe their business idea or problem in plain language. Don't let them pitch you — ask them to tell you who has the problem and why it matters. Listen for whether they're talking about a real person or a vague abstraction.
16
+
17
+ If they say something like "everyone could use this" or "any business would want this," that's your signal to push for specificity. Help them narrow down.
18
+
19
+ ### Map assumptions
20
+
21
+ Walk the user through the assumption-mapping questions from the reference doc. These are the big ones:
22
+
23
+ - Who is your target customer?
24
+ - What problem do they want to solve?
25
+ - Why can't they solve it today?
26
+ - What measurable outcome do they want?
27
+ - Who is your earliest adopter?
28
+ - How will you acquire customers?
29
+ - How will you make money?
30
+ - Who is your primary competition and why will you beat them?
31
+ - What assumption, if proven wrong, would kill this?
32
+
33
+ Help them answer each one. When they're done, flag which assumptions are both high-impact AND highly uncertain — those become interview priorities.
34
+
35
+ ### Define the customer segment
36
+
37
+ Push them to get specific. Not "marketing managers" — try "marketing managers at 50-200 person B2B SaaS companies who own the content pipeline and report to the VP of Marketing."
38
+
39
+ Help them define three audiences:
40
+ 1. Typical customer at scale
41
+ 2. Early adopter (feels the pain acutely, interview first)
42
+ 3. Critical distribution or fulfillment partners
43
+
44
+ ### Frame the job-to-be-done
45
+
46
+ Help them articulate the specific problem their customer is trying to solve, in a specific situation. Include:
47
+ - Functional needs (what they need to get done)
48
+ - Emotional needs (how they want to feel)
49
+ - Social needs (how they want to be seen)
50
+
51
+ Use the customer's language, not founder language. If the user is using jargon their customer wouldn't use, flag it.
52
+
53
+ ### Check problem validity
54
+
55
+ Run the problem through the three-part test:
56
+ - Is it important to the customer?
57
+ - Is it unsatisfied by current options?
58
+ - Is it high-value enough that they'd pay for a better solution?
59
+
60
+ If any of these fail, flag it honestly. Also identify what the customer does today instead — existing alternatives and DIY workarounds are strong signals.
61
+
62
+ ## Deliverable
63
+
64
+ Offer to produce a **Discovery Strategy Brief** — a single document the user can reference throughout their entire discovery process. This is the foundation everything else builds on.
65
+
66
+ The brief should include:
67
+ - **Assumption map:** All 9 questions answered, with each marked as confirmed / uncertain / high-risk. Highlight the high-impact + high-uncertainty ones — these drive the interviews.
68
+ - **Customer segment definition:** The specific person they're targeting (not generic). Include typical customer, early adopter, and distribution partners if applicable.
69
+ - **Job-to-be-done statement:** The specific problem, in the customer's language, covering functional, emotional, and social needs.
70
+ - **Buyer landscape:** Who's involved in the purchase decision (if B2B) — user, buyer, payer, influencer, etc.
71
+ - **Interview priorities:** The top 3-5 assumptions to test first, ranked by risk.
72
+ - **Current alternatives:** What customers do today instead, including DIY workarounds.
73
+
74
+ Write this as a clean, scannable document the user can share with teammates or refer back to before every interview.
75
+
76
+ ## Next step
77
+
78
+ When this step is done, offer to continue to **Step 2: Outreach** — crafting messages to reach the people they've just identified.
@@ -0,0 +1,69 @@
1
+ # Step 2: Outreach
2
+
3
+ ## Before anything else
4
+
5
+ Read `references/02-outreach.md` in the skill directory. That's your source of truth for this step.
6
+
7
+ ## What this step accomplishes
8
+
9
+ Help the user craft outreach messages that actually get responses. By the end, they should have ready-to-send messages — warm intro asks, cold outreach, and LinkedIn variants if needed.
10
+
11
+ ## How to work through this with the user
12
+
13
+ ### Start with warm intros
14
+
15
+ Before touching cold outreach, ask: who do they already know that could introduce them to their target customer? A mutual connection asking on their behalf will always outperform cold. Help them think through their network — friends, classmates, coworkers, LinkedIn connections, advisors.
16
+
17
+ If they're hesitant, name it: hesitation to reach out is usually fear of rejection in disguise. The fix is sending more messages, faster.
18
+
19
+ ### Understand their context
20
+
21
+ Before writing messages, ask:
22
+ - Who specifically are they reaching out to? (title, company type, context)
23
+ - What's the problem they want to discuss? (from **Step 1: Strategy & Targeting** if they did it)
24
+ - What's their angle? (student, founder, researcher — this shapes how they position themselves)
25
+ - What platform? (LinkedIn, email, Twitter DM, etc.)
26
+
27
+ ### Craft outreach using the 2-sentence formula
28
+
29
+ Build messages using the formula from the reference:
30
+ - **Sentence 1:** Their job to be done. Lead with a problem they recognize.
31
+ - **Sentence 2:** The honest ask. Say who you are and what you want. Ask for a specific time.
32
+
33
+ Apply the relevant tricks from the reference (no-oriented close, scarcity, specific time, tiny ask, etc.) — but don't force all 12 into every message. Pick what fits naturally.
34
+
35
+ Generate 2-3 variants so the user can pick and test.
36
+
37
+ ### LinkedIn version
38
+
39
+ If they're using LinkedIn, create a version under 300 characters. Every word counts.
40
+
41
+ ### Review together
42
+
43
+ Show the messages and briefly explain which techniques are at play and why. Let the user adjust tone, details, and anything that doesn't sound like them. The message has to feel authentic — if it reads like outreach, it won't work.
44
+
45
+ ### Flag what to avoid
46
+
47
+ If the user's draft or instinct includes any of these, flag it:
48
+ - Long paragraphs
49
+ - Leading with features or their product concept
50
+ - Vague asks like "sometime next week"
51
+ - Anything that looks like sales
52
+ - Multiple value props crammed in
53
+
54
+ ## Deliverable
55
+
56
+ Offer to produce an **Outreach Playbook** — a ready-to-use document with every message the user needs to start booking interviews.
57
+
58
+ The playbook should include:
59
+ - **Warm intro request template:** A message the user can send to mutual connections asking for an introduction. Should explain who they want to talk to and why, making it easy for the connector to forward.
60
+ - **Cold outreach messages:** 2-3 variants using the 2-sentence formula, each with a slightly different angle or tone so the user can A/B test.
61
+ - **LinkedIn connection note:** A sub-300-character version optimized for the LinkedIn character limit (if applicable).
62
+ - **Follow-up message:** A short, non-pushy follow-up for people who don't respond to the first message.
63
+ - **Technique annotations:** Brief notes on which of the 12 tricks are at play in each message, so the user understands why they work and can adapt them for future outreach.
64
+
65
+ Write the messages ready to copy-paste — the user should be able to send them within minutes of reading the playbook.
66
+
67
+ ## Next step
68
+
69
+ When this step is done, offer to continue to **Step 3: Interview Execution** — building a tailored interview guide with the right questions.
@@ -0,0 +1,87 @@
1
+ # Step 3: Interview Execution
2
+
3
+ ## Before anything else
4
+
5
+ Read `references/03-interview-execution.md` in the skill directory. That's your source of truth for this step.
6
+
7
+ ## What this step accomplishes
8
+
9
+ Help the user build a tailored interview guide with the right questions and protect them from the wrong ones. By the end, they should have a guide they can walk into an interview with — structured, behavioral, and bias-aware.
10
+
11
+ ## How to work through this with the user
12
+
13
+ ### Clarify what they're testing
14
+
15
+ Ask what assumptions or questions they want to answer through these interviews. If they did **Step 1: Strategy & Targeting**, pull from their high-priority assumptions. If they didn't, help them articulate what they need to learn before building anything.
16
+
17
+ Remind them: don't try to learn everything in one interview. Pick 2-3 areas to go deep on.
18
+
19
+ ### Build the interview guide
20
+
21
+ Generate a structured guide with these sections:
22
+
23
+ 1. **Brief intro** — who you are, why you're here, how long it'll take. Set the tone: "I'm not selling anything, I just want to learn."
24
+ 2. **1-2 warm-up questions** — easy, low-stakes questions to get them talking.
25
+ 3. **Story-eliciting behavioral questions** — the core. These should start with "Tell me about the last time you..." or "Walk me through how you..." or "What happened when..."
26
+ 4. **Drill-down follow-ups** — ready-made probes for when something interesting comes up. "Why was that?" "What happened next?" "How did that make you feel?"
27
+ 5. **Closing** — "What should I have asked you that I didn't?" Then: "Who else should I talk to?" Goal: 2-3 referrals.
28
+
29
+ ### The right questions vs. the wrong questions
30
+
31
+ This is the core value of this step. Actively protect the user from bad questions.
32
+
33
+ **Wrong questions (flag and replace these):**
34
+ - "Would you use this?" — speculative, unreliable
35
+ - "Do you think this is a good idea?" — people are polite, they'll say yes
36
+ - "Would you pay $X for this?" — hypothetical pricing is meaningless
37
+ - "Do you like [feature]?" — feature feedback before behavior questions contaminates everything
38
+ - Any yes/no question — kills conversation depth
39
+ - Any question that starts with "Is," "Are," "Would," or "Do you" — usually closed-ended
40
+
41
+ **Right questions (use these patterns):**
42
+ - "Tell me about the last time you [dealt with this problem]..."
43
+ - "Walk me through how you [handle this today]..."
44
+ - "What triggered your search for a solution?"
45
+ - "What happened after you tried [current solution]?"
46
+ - "Where does this rank in your list of problems this week?"
47
+ - "What are you spending (time/money) on this today?"
48
+
49
+ When the user suggests a question, check it against this list. If it's speculative or leading, explain why and offer a behavioral alternative.
50
+
51
+ ### Pricing (if relevant)
52
+
53
+ If the user needs to explore pricing, guide them away from "Would you pay $X?" and toward:
54
+ - What are you currently spending to address this?
55
+ - What budget exists for this kind of thing?
56
+ - Who controls that budget?
57
+
58
+ The reference doc explains why: people only honestly consider willingness to pay when it feels like a real transaction.
59
+
60
+ ### Bias reminders
61
+
62
+ Before they go into interviews, remind them:
63
+ - Go in ready to hear things you don't want to hear
64
+ - Adopt a "try to kill the idea" mindset — it actually works
65
+ - Don't pitch. Don't lead the witness. Don't embed the answer in the question.
66
+ - If possible, bring a note-taker. Interviewers filter for what they believe.
67
+ - In-person is best, video is second, phone is last resort. Never text or email.
68
+
69
+ ## Deliverable
70
+
71
+ Offer to produce an **Interview Guide** — a document the user can print or pull up on their phone during interviews.
72
+
73
+ The guide should include:
74
+ - **Bias checklist at the top:** A short list of reminders to read before every interview — don't pitch, don't lead, try to kill the idea, listen more than you talk.
75
+ - **Intro script:** Exactly what to say in the first 30 seconds — who you are, why you're here, how long it'll take, that you're not selling anything.
76
+ - **Warm-up questions:** 1-2 easy, low-stakes questions to get the conversation flowing.
77
+ - **Core behavioral questions:** 5-8 story-eliciting questions tailored to the specific assumptions they're testing. Each one should start with "Tell me about...", "Walk me through...", or "What happened when..."
78
+ - **Drill-down prompts:** A sidebar of ready-made follow-ups for when something interesting comes up — "Why was that?", "What happened next?", "How did that make you feel?", "Can you give me a specific example?"
79
+ - **Pricing questions (if relevant):** Questions about current spend, budget, and who controls it — not hypothetical "would you pay" questions.
80
+ - **Closing script:** "What should I have asked you that I didn't?" followed by the referral ask — "Who else should I talk to?" with a goal of 2-3 names.
81
+ - **Post-interview checklist:** Reminders to write notes immediately after, capture direct quotes, and note emotional intensity while it's fresh.
82
+
83
+ Format it so it's scannable at a glance — the user shouldn't have to read paragraphs mid-interview.
84
+
85
+ ## Next step
86
+
87
+ When this step is done, offer to continue to **Step 4: Analysis & Signals** — making sense of what they hear in the interviews.
@@ -0,0 +1,95 @@
1
+ # Step 4: Analysis & Signals
2
+
3
+ ## Before anything else
4
+
5
+ Read `references/04-analysis-and-signals.md` in the skill directory. That's your source of truth for this step.
6
+
7
+ ## What this step accomplishes
8
+
9
+ Help the user make sense of their interviews. By the end, they should know what patterns emerged, which problems matter most, how strong their signals are, and what to do next.
10
+
11
+ ## How to work through this with the user
12
+
13
+ ### Get the raw material
14
+
15
+ Ask the user to share their interview transcripts or notes — or both. They can paste them in, describe what they heard, or point to files. Raw transcripts are ideal (more detail, less filtering), but messy notes work too. Work with whatever they have.
16
+
17
+ If their material is thin, help them reconstruct what they remember. Prompt with: "What surprised you?" "What did you hear more than once?" "Did anyone describe a workaround they built?"
18
+
19
+ ### Structure the notes
20
+
21
+ For each interview, capture:
22
+ - Who they talked to (name, role, context)
23
+ - Key quotes — their exact words, not the user's interpretation
24
+ - Pain points mentioned
25
+ - Current solutions or workarounds
26
+ - Emotional intensity (mild annoyance vs. genuine frustration)
27
+ - Any progression signals (see below)
28
+
29
+ ### Spot patterns
30
+
31
+ Look across all interviews for recurring themes. Help the user see what clusters:
32
+ - What problems came up repeatedly?
33
+ - What language do customers use to describe the pain?
34
+ - What workarounds or DIY solutions are they using?
35
+ - Where did emotions run highest?
36
+
37
+ Calculate rough percentages where possible. "7 out of 10 mentioned X" fights cognitive bias better than "a lot of people said X."
38
+
39
+ ### Check progression signals
40
+
41
+ The reference doc defines a signal ladder. Help the user assess where their interviewees fall:
42
+
43
+ 1. **They describe the pain clearly and unprompted** — a signal, but not enough alone
44
+ 2. **They say they'd buy a solution** — counts, but weight it with skepticism (people are polite)
45
+ 3. **They ask how to buy it now** — gold
46
+
47
+ Also strong signals:
48
+ - They've DIY-hacked their own solution
49
+ - They're currently paying for a partial workaround
50
+ - They can tell you their existing budget and who controls it
51
+
52
+ ### Force-rank problems
53
+
54
+ After patterns emerge, help the user rank the problems by:
55
+ - How often they came up
56
+ - How intense the emotion was
57
+ - How willing people were to act on them
58
+ - How much money or time they were already spending
59
+
60
+ The #1 problem is the one to solve. Don't let them get distracted by #3.
61
+
62
+ ### Watch for false positives
63
+
64
+ Remind them: people want to be nice. "I love it" means nothing without behavior to back it up. Watch what they did, not what they said. Weight positive reactions with skepticism.
65
+
66
+ ### Assess where they are
67
+
68
+ Help them figure out their next move:
69
+ - **Hearing the same thing over and over?** That's pattern saturation. Time to shift from discovery to testing solutions.
70
+ - **Patterns aren't emerging after 15-20 interviews?** The segment or hypothesis is probably off. Rethink before doing more interviews.
71
+ - **Strong signals but only from a few people?** Might need more interviews to confirm, or might have found a very specific niche.
72
+
73
+ ## Deliverable
74
+
75
+ Offer to produce a **Discovery Findings Report** — a document that captures everything learned so the insights don't live only in the user's head. This is the document they'd share with co-founders, advisors, or investors to show what they learned.
76
+
77
+ The report should include:
78
+ - **Interview summary table:** Who was interviewed (name/role, date, format), one-line takeaway per interview.
79
+ - **Top patterns:** The 3-5 themes that came up most often, with rough percentages (e.g., "8 out of 12 mentioned X"). Use the customer's language, not the founder's.
80
+ - **Force-ranked problem list:** Problems ranked by frequency, emotional intensity, willingness to act, and current spend. The #1 problem is clearly called out.
81
+ - **Key quotes:** 5-10 direct quotes that capture the pain in the customer's own words. These are gold for pitch decks, landing pages, and internal alignment.
82
+ - **Progression signals:** Where interviewees fall on the signal ladder — pain described, would buy, asking to buy. Note any who've built DIY workarounds or are already paying for partial solutions.
83
+ - **Assumption scorecard:** Revisit the assumptions from **Step 1: Strategy & Targeting** (if they did it). Mark each as confirmed, denied, or still uncertain based on what they heard.
84
+ - **Before vs. after sketch:** What the customer's world looks like today vs. after the solution exists. Quantify the difference where possible.
85
+ - **Recommended next steps:** Based on the strength of the signals — more interviews, pivot the segment, or start testing solutions (landing page, prototype, concierge experiment).
86
+
87
+ Write this so it stands on its own — someone who wasn't in the interviews should be able to read it and understand what was learned.
88
+
89
+ ## What's next
90
+
91
+ Based on the analysis, suggest what makes sense:
92
+ - If patterns are clear and signals are strong → start testing solutions (landing page, prototype, concierge experiment)
93
+ - If patterns are emerging but thin → do more interviews with the same segment
94
+ - If nothing is clicking → revisit **Step 1: Strategy & Targeting** and rethink the customer segment or problem hypothesis
95
+ - Customer discovery is never fully done — when patterns flatten, evolve what you're exploring
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: github-issue-tracker
2
+ name: estack-github-issue-tracker
3
3
  description: >
4
4
  GitHub issue tracker management. Checks all open issues the user is involved in,
5
5
  finds related/duplicate issues, reports what changed, and recommends next steps.
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: repo-search
2
+ name: estack-repo-search
3
3
  description: >-
4
4
  Clone and search external GitHub repositories to answer questions about their
5
5
  code. Use this skill whenever the user references a repo you don't have local