bobo-ai-cli 1.0.1
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/LICENSE +21 -0
- package/README.md +216 -0
- package/dist/agent.d.ts +9 -0
- package/dist/agent.js +144 -0
- package/dist/agent.js.map +1 -0
- package/dist/config.d.ts +15 -0
- package/dist/config.js +76 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +366 -0
- package/dist/index.js.map +1 -0
- package/dist/knowledge-commands.d.ts +2 -0
- package/dist/knowledge-commands.js +40 -0
- package/dist/knowledge-commands.js.map +1 -0
- package/dist/knowledge.d.ts +17 -0
- package/dist/knowledge.js +112 -0
- package/dist/knowledge.js.map +1 -0
- package/dist/memory.d.ts +17 -0
- package/dist/memory.js +215 -0
- package/dist/memory.js.map +1 -0
- package/dist/planner.d.ts +22 -0
- package/dist/planner.js +130 -0
- package/dist/planner.js.map +1 -0
- package/dist/project.d.ts +25 -0
- package/dist/project.js +117 -0
- package/dist/project.js.map +1 -0
- package/dist/rules-commands.d.ts +2 -0
- package/dist/rules-commands.js +51 -0
- package/dist/rules-commands.js.map +1 -0
- package/dist/skills.d.ts +28 -0
- package/dist/skills.js +349 -0
- package/dist/skills.js.map +1 -0
- package/dist/structured/loader.d.ts +19 -0
- package/dist/structured/loader.js +147 -0
- package/dist/structured/loader.js.map +1 -0
- package/dist/structured/paths.d.ts +2 -0
- package/dist/structured/paths.js +14 -0
- package/dist/structured/paths.js.map +1 -0
- package/dist/structured/project-scaffold.d.ts +7 -0
- package/dist/structured/project-scaffold.js +60 -0
- package/dist/structured/project-scaffold.js.map +1 -0
- package/dist/structured/render-markdown.d.ts +37 -0
- package/dist/structured/render-markdown.js +47 -0
- package/dist/structured/render-markdown.js.map +1 -0
- package/dist/structured/render-table.d.ts +1 -0
- package/dist/structured/render-table.js +15 -0
- package/dist/structured/render-table.js.map +1 -0
- package/dist/structured/search.d.ts +10 -0
- package/dist/structured/search.js +104 -0
- package/dist/structured/search.js.map +1 -0
- package/dist/structured/skill-runner.d.ts +15 -0
- package/dist/structured/skill-runner.js +60 -0
- package/dist/structured/skill-runner.js.map +1 -0
- package/dist/structured/types.d.ts +212 -0
- package/dist/structured/types.js +97 -0
- package/dist/structured/types.js.map +1 -0
- package/dist/structured-skills-commands.d.ts +3 -0
- package/dist/structured-skills-commands.js +126 -0
- package/dist/structured-skills-commands.js.map +1 -0
- package/dist/structured-template-commands.d.ts +2 -0
- package/dist/structured-template-commands.js +34 -0
- package/dist/structured-template-commands.js.map +1 -0
- package/dist/tools/index.d.ts +3 -0
- package/dist/tools/index.js +450 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/ui.d.ts +19 -0
- package/dist/ui.js +72 -0
- package/dist/ui.js.map +1 -0
- package/dist/web.d.ts +4 -0
- package/dist/web.js +124 -0
- package/dist/web.js.map +1 -0
- package/knowledge/advanced-patterns.md +70 -0
- package/knowledge/agent-directives.md +74 -0
- package/knowledge/dream.md +36 -0
- package/knowledge/engineering.md +46 -0
- package/knowledge/error-catalog.md +33 -0
- package/knowledge/index.json +170 -0
- package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -0
- package/knowledge/memory/engineering-patterns.md +134 -0
- package/knowledge/memory/feedback_root_structure.md +16 -0
- package/knowledge/memory/project-contexts.md +69 -0
- package/knowledge/memory/tools-and-services.md +85 -0
- package/knowledge/rules/agents.md +62 -0
- package/knowledge/rules/blocking-rules.md +323 -0
- package/knowledge/rules/cache-management.md +379 -0
- package/knowledge/rules/capability-evolution.md +132 -0
- package/knowledge/rules/coding.md +126 -0
- package/knowledge/rules/engineering-workflows.md +225 -0
- package/knowledge/rules/evomap-content-guidelines.md +354 -0
- package/knowledge/rules/evomap-guide.md +224 -0
- package/knowledge/rules/git.md +31 -0
- package/knowledge/rules/hooks.md +106 -0
- package/knowledge/rules/performance.md +101 -0
- package/knowledge/rules/remotion-auto-production.md +1120 -0
- package/knowledge/rules/security.md +46 -0
- package/knowledge/rules/testing.md +32 -0
- package/knowledge/rules/work-mode.md +208 -0
- package/knowledge/rules.md +62 -0
- package/knowledge/skills/Skill_Seekers.md +1722 -0
- package/knowledge/skills/ab-test-setup.md +557 -0
- package/knowledge/skills/agent-sdk-dev.md +238 -0
- package/knowledge/skills/agent-tools.md +136 -0
- package/knowledge/skills/analytics-tracking.md +597 -0
- package/knowledge/skills/artifacts-builder.md +89 -0
- package/knowledge/skills/asana.md +13 -0
- package/knowledge/skills/backend-expert.md +97 -0
- package/knowledge/skills/brand-voice.md +481 -0
- package/knowledge/skills/browser-use.md +419 -0
- package/knowledge/skills/cache-optimization-skill.md +179 -0
- package/knowledge/skills/canvas-design.md +147 -0
- package/knowledge/skills/citation-validator.md +203 -0
- package/knowledge/skills/clangd-lsp.md +52 -0
- package/knowledge/skills/code-review-expert.md +85 -0
- package/knowledge/skills/code-review.md +280 -0
- package/knowledge/skills/code-simplifier.md +13 -0
- package/knowledge/skills/commit-commands.md +258 -0
- package/knowledge/skills/competitor-alternatives.md +795 -0
- package/knowledge/skills/content-atomizer.md +910 -0
- package/knowledge/skills/content-research-writer.md +605 -0
- package/knowledge/skills/context-optimization-suite.md +162 -0
- package/knowledge/skills/context7.md +13 -0
- package/knowledge/skills/copy-editing.md +494 -0
- package/knowledge/skills/copywriting.md +510 -0
- package/knowledge/skills/csharp-lsp.md +40 -0
- package/knowledge/skills/decision-making-framework.md +154 -0
- package/knowledge/skills/developer-growth-analysis.md +335 -0
- package/knowledge/skills/direct-response-copy.md +2336 -0
- package/knowledge/skills/docker-expert.md +229 -0
- package/knowledge/skills/document-skills.md +13 -0
- package/knowledge/skills/documentation-expert.md +126 -0
- package/knowledge/skills/email-sequence.md +1061 -0
- package/knowledge/skills/email-sequences.md +910 -0
- package/knowledge/skills/example-plugin.md +72 -0
- package/knowledge/skills/explanatory-output-style.md +82 -0
- package/knowledge/skills/feature-dev.md +458 -0
- package/knowledge/skills/file-organizer.md +466 -0
- package/knowledge/skills/firebase.disabled.md +13 -0
- package/knowledge/skills/form-cro.md +488 -0
- package/knowledge/skills/free-tool-strategy.md +636 -0
- package/knowledge/skills/frontend-design-offical.md +55 -0
- package/knowledge/skills/frontend-design.md +41 -0
- package/knowledge/skills/frontend-expert.md +93 -0
- package/knowledge/skills/github.md +13 -0
- package/knowledge/skills/gitlab.md +13 -0
- package/knowledge/skills/gopls-lsp.md +32 -0
- package/knowledge/skills/got-controller.md +218 -0
- package/knowledge/skills/greptile.md +72 -0
- package/knowledge/skills/hookify.md +376 -0
- package/knowledge/skills/image-editor.md +189 -0
- package/knowledge/skills/image-enhancer.md +109 -0
- package/knowledge/skills/jdtls-lsp.md +49 -0
- package/knowledge/skills/json-canvas.md +654 -0
- package/knowledge/skills/keyword-research.md +559 -0
- package/knowledge/skills/kotlin-lsp.md +28 -0
- package/knowledge/skills/laravel-boost.md +13 -0
- package/knowledge/skills/launch-strategy.md +394 -0
- package/knowledge/skills/lead-magnet.md +393 -0
- package/knowledge/skills/learning-output-style.md +106 -0
- package/knowledge/skills/linear.md +13 -0
- package/knowledge/skills/lua-lsp.md +47 -0
- package/knowledge/skills/marketing-ideas.md +720 -0
- package/knowledge/skills/marketing-psychology.md +534 -0
- package/knowledge/skills/mcp-builder.md +369 -0
- package/knowledge/skills/meeting-insights-analyzer.md +347 -0
- package/knowledge/skills/memory-evolution-system.md +172 -0
- package/knowledge/skills/multi-lens-thinking.md +407 -0
- package/knowledge/skills/nano-banana-pro.md +116 -0
- package/knowledge/skills/newsletter.md +736 -0
- package/knowledge/skills/notebooklm.md +296 -0
- package/knowledge/skills/obsidian-bases.md +634 -0
- package/knowledge/skills/obsidian-markdown.md +651 -0
- package/knowledge/skills/onboarding-cro.md +494 -0
- package/knowledge/skills/orchestrator.md +681 -0
- package/knowledge/skills/page-cro.md +379 -0
- package/knowledge/skills/paid-ads.md +624 -0
- package/knowledge/skills/paywall-upgrade-cro.md +651 -0
- package/knowledge/skills/php-lsp.md +36 -0
- package/knowledge/skills/planning-with-files.md +193 -0
- package/knowledge/skills/playwright.md +13 -0
- package/knowledge/skills/plugin-dev.md +434 -0
- package/knowledge/skills/popup-cro.md +520 -0
- package/knowledge/skills/positioning-angles.md +330 -0
- package/knowledge/skills/pr-review-toolkit.md +359 -0
- package/knowledge/skills/pricing-strategy.md +777 -0
- package/knowledge/skills/programmatic-seo.md +714 -0
- package/knowledge/skills/pyright-lsp.md +43 -0
- package/knowledge/skills/quality-assurance-framework.md +168 -0
- package/knowledge/skills/question-refiner.md +160 -0
- package/knowledge/skills/ralph-loop.md +205 -0
- package/knowledge/skills/refactoring-expert.md +103 -0
- package/knowledge/skills/referral-program.md +668 -0
- package/knowledge/skills/research-executor.md +164 -0
- package/knowledge/skills/review-with-security.md +12 -0
- package/knowledge/skills/rust-analyzer-lsp.md +50 -0
- package/knowledge/skills/schema-markup.md +647 -0
- package/knowledge/skills/security-audit-expert.md +124 -0
- package/knowledge/skills/security-expert.md +140 -0
- package/knowledge/skills/security-guidance.md +13 -0
- package/knowledge/skills/seedance-prompt.md +139 -0
- package/knowledge/skills/self-evolution.md +1160 -0
- package/knowledge/skills/seo-audit.md +432 -0
- package/knowledge/skills/seo-content.md +787 -0
- package/knowledge/skills/serena.md +13 -0
- package/knowledge/skills/signup-flow-cro.md +409 -0
- package/knowledge/skills/skill-creator.md +220 -0
- package/knowledge/skills/skill-manager.md +226 -0
- package/knowledge/skills/skill-share.md +98 -0
- package/knowledge/skills/slack.md +13 -0
- package/knowledge/skills/social-content.md +878 -0
- package/knowledge/skills/spec-flow-skill.md +124 -0
- package/knowledge/skills/stripe.md +13 -0
- package/knowledge/skills/supabase.md +13 -0
- package/knowledge/skills/swift-lsp.md +40 -0
- package/knowledge/skills/synthesizer.md +236 -0
- package/knowledge/skills/template-skill.md +16 -0
- package/knowledge/skills/testing-expert.md +99 -0
- package/knowledge/skills/theme-factory.md +72 -0
- package/knowledge/skills/tiktok-research.md +208 -0
- package/knowledge/skills/typescript-lsp.md +36 -0
- package/knowledge/skills/ui-ux-pro-max.md +247 -0
- package/knowledge/skills/verify.md +15 -0
- package/knowledge/skills/visual-prompt-engineer.md +102 -0
- package/knowledge/skills/webapp-testing.md +111 -0
- package/knowledge/skills/wide-research.md +191 -0
- package/knowledge/system.md +93 -0
- package/knowledge/task-router.md +37 -0
- package/knowledge/verification.md +38 -0
- package/knowledge/workflows/3d-viz.md +47 -0
- package/knowledge/workflows/data-pipeline.md +47 -0
- package/knowledge/workflows/db-migration.md +51 -0
- package/knowledge/workflows/feature-dev.md +41 -0
- package/knowledge/workflows/tdd-flow.md +52 -0
- package/knowledge/workflows/ui-verify.md +51 -0
- package/package.json +60 -0
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: "positioning-angles"
|
|
3
|
+
title: "Positioning & Angles"
|
|
4
|
+
category: "marketing"
|
|
5
|
+
tags: ["positioning & angles", "the core job", "the angle-finding process", "output format", "how this skill gets invoked", "what this skill is not", "the test", "references"]
|
|
6
|
+
triggers: []
|
|
7
|
+
dependencies: []
|
|
8
|
+
source: "E:/Bobo's Coding cache/.claude/skills/positioning-angles"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
name: positioning-angles
|
|
13
|
+
description: "Find the angle that makes something sell. Use when launching a product, creating a lead magnet, writing a landing page, crafting an offer, or when marketing isn't converting. Triggers on: find angles for X, how should I position X, what's the hook, why isn't this selling, make this stand out, differentiate this, or when copy/landing page work needs a strong angle first. Outputs 3-5 distinct positioning options with headline directions for each."
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Positioning & Angles
|
|
17
|
+
|
|
18
|
+
The same product can sell 100x better with a different angle. Not a different product. Not better features. Just a different way of framing what it already does.
|
|
19
|
+
|
|
20
|
+
This skill finds those angles.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## The core job
|
|
25
|
+
|
|
26
|
+
When someone asks about positioning or angles, the goal isn't to find THE answer. It's to surface **multiple powerful options** they can choose from.
|
|
27
|
+
|
|
28
|
+
Every product has several valid angles. The question is which one resonates most with the specific audience at the specific moment.
|
|
29
|
+
|
|
30
|
+
Output format: **3-5 distinct angle options**, each with:
|
|
31
|
+
|
|
32
|
+
- The angle (one sentence)
|
|
33
|
+
- Why it works (the psychology)
|
|
34
|
+
- Headline direction (how it would sound in copy)
|
|
35
|
+
- When to use it (market conditions, audience segments)
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## The angle-finding process
|
|
40
|
+
|
|
41
|
+
### Step 1: Identify what they're actually selling
|
|
42
|
+
|
|
43
|
+
Not the product. The transformation.
|
|
44
|
+
|
|
45
|
+
Ask: What does the customer's life look like AFTER? What pain disappears? What capability appears? What status changes?
|
|
46
|
+
|
|
47
|
+
A fitness program doesn't sell workouts. It sells "fit into your old jeans" or "keep up with your kids" or "look good naked."
|
|
48
|
+
|
|
49
|
+
A SaaS tool doesn't sell features. It sells "close your laptop at 5pm" or "never lose a lead" or "stop the spreadsheet chaos."
|
|
50
|
+
|
|
51
|
+
**The transformation is the raw material for angles.**
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### Step 2: Map the competitive landscape
|
|
56
|
+
|
|
57
|
+
What would customers do if this didn't exist? Not competitors—alternatives.
|
|
58
|
+
|
|
59
|
+
- Do nothing (live with the problem)
|
|
60
|
+
- DIY (cobble together a solution)
|
|
61
|
+
- Hire someone (consultant, freelancer, agency)
|
|
62
|
+
- Buy a different category (different approach entirely)
|
|
63
|
+
- Buy a direct competitor
|
|
64
|
+
|
|
65
|
+
Each alternative has weaknesses. Those weaknesses become angle opportunities.
|
|
66
|
+
|
|
67
|
+
**Angle opportunity:** What's frustrating about each alternative that this solves?
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### Step 3: Find the unique mechanism
|
|
72
|
+
|
|
73
|
+
The mechanism is HOW the product delivers results differently.
|
|
74
|
+
|
|
75
|
+
Not "we help you lose weight" (that's the promise).
|
|
76
|
+
"We help you lose weight through intermittent fasting optimized for your metabolic type" (that's the mechanism).
|
|
77
|
+
|
|
78
|
+
The mechanism makes the promise believable. It answers: "Why will this work when other things haven't?"
|
|
79
|
+
|
|
80
|
+
**Questions to surface the mechanism:**
|
|
81
|
+
|
|
82
|
+
- What's the proprietary process, method, or system?
|
|
83
|
+
- What do you do differently than the obvious approach?
|
|
84
|
+
- What's the counterintuitive insight that makes this work?
|
|
85
|
+
- What's the "secret" ingredient, step, or element?
|
|
86
|
+
|
|
87
|
+
Even if nothing is truly proprietary, there's always a mechanism. Name it.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
### Step 4: Assess market sophistication
|
|
92
|
+
|
|
93
|
+
Where is the market on Schwartz's awareness scale?
|
|
94
|
+
|
|
95
|
+
**Stage 1 (New category):** The market hasn't seen this before.
|
|
96
|
+
→ Angle: Simple announcement. "Now you can [do thing]."
|
|
97
|
+
|
|
98
|
+
**Stage 2 (Growing awareness):** Competition exists, market is warming.
|
|
99
|
+
→ Angle: Claim superiority. "The fastest/easiest/most complete way to [outcome]."
|
|
100
|
+
|
|
101
|
+
**Stage 3 (Crowded):** Many players, similar claims, skepticism rising.
|
|
102
|
+
→ Angle: Explain the mechanism. "Here's WHY this works when others don't."
|
|
103
|
+
|
|
104
|
+
**Stage 4 (Jaded):** Market has seen everything, needs new frame.
|
|
105
|
+
→ Angle: Identity and belonging. "For people who [identity marker]."
|
|
106
|
+
|
|
107
|
+
**Stage 5 (Iconic):** Established leaders, brand loyalty matters.
|
|
108
|
+
→ Angle: Exclusive access. "Join the [tribe/movement]."
|
|
109
|
+
|
|
110
|
+
**The market stage determines which angle TYPE will work.**
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
### Step 5: Run the angle generators
|
|
115
|
+
|
|
116
|
+
Now generate options using multiple frameworks:
|
|
117
|
+
|
|
118
|
+
#### The Contrarian Angle
|
|
119
|
+
|
|
120
|
+
What does everyone in this market believe that might not be true?
|
|
121
|
+
Challenge that assumption directly.
|
|
122
|
+
|
|
123
|
+
> "Everything you've been told about [topic] is wrong."
|
|
124
|
+
> "Stop [common practice]. Here's what actually works."
|
|
125
|
+
|
|
126
|
+
Works when: Market is frustrated with conventional approaches. Audience sees themselves as independent thinkers.
|
|
127
|
+
|
|
128
|
+
#### The Unique Mechanism Angle
|
|
129
|
+
|
|
130
|
+
Lead with the HOW, not just the WHAT.
|
|
131
|
+
Name the proprietary process or insight.
|
|
132
|
+
|
|
133
|
+
> "The [Named Method] that [specific result]"
|
|
134
|
+
> "How [mechanism] lets you [outcome] without [usual sacrifice]"
|
|
135
|
+
|
|
136
|
+
Works when: Market is sophisticated (Stage 3+). Similar promises exist. Need to differentiate.
|
|
137
|
+
|
|
138
|
+
#### The Transformation Angle
|
|
139
|
+
|
|
140
|
+
Before and after. The gap between current state and desired state.
|
|
141
|
+
|
|
142
|
+
> "From [painful current state] to [desired outcome]"
|
|
143
|
+
> "Go from [specific bad metric] to [specific good metric] in [timeframe]"
|
|
144
|
+
|
|
145
|
+
Works when: The transformation is dramatic and specific. Market is problem-aware.
|
|
146
|
+
|
|
147
|
+
#### The Enemy Angle
|
|
148
|
+
|
|
149
|
+
Position against a common enemy (not a competitor—a problem, a mindset, an obstacle).
|
|
150
|
+
|
|
151
|
+
> "Stop letting [enemy] steal your [valuable thing]"
|
|
152
|
+
> "The [enemy] is lying to you. Here's the truth."
|
|
153
|
+
|
|
154
|
+
Works when: Audience has shared frustrations. There's a clear villain to rally against.
|
|
155
|
+
|
|
156
|
+
#### The Speed/Ease Angle
|
|
157
|
+
|
|
158
|
+
Compress the time or reduce the effort.
|
|
159
|
+
|
|
160
|
+
> "[Outcome] in [surprisingly short time]"
|
|
161
|
+
> "[Outcome] without [expected sacrifice]"
|
|
162
|
+
|
|
163
|
+
Works when: Alternatives require significant time or effort. Speed/ease is genuinely differentiated.
|
|
164
|
+
|
|
165
|
+
#### The Specificity Angle
|
|
166
|
+
|
|
167
|
+
Get hyper-specific about who it's for or what it delivers.
|
|
168
|
+
|
|
169
|
+
> "For [very specific avatar] who want [very specific outcome]"
|
|
170
|
+
> "The [specific number] [specific things] that [specific result]"
|
|
171
|
+
|
|
172
|
+
Works when: Competing with generic offerings. Want to signal "this is built for YOU."
|
|
173
|
+
|
|
174
|
+
#### The Social Proof Angle
|
|
175
|
+
|
|
176
|
+
Lead with evidence, not claims.
|
|
177
|
+
|
|
178
|
+
> "[Specific result] for [number] [type of people]"
|
|
179
|
+
> "How [credible person/company] achieved [specific outcome]"
|
|
180
|
+
|
|
181
|
+
Works when: Have strong proof. Market is skeptical. Trust is the primary barrier.
|
|
182
|
+
|
|
183
|
+
#### The Risk Reversal Angle
|
|
184
|
+
|
|
185
|
+
Make the guarantee the headline.
|
|
186
|
+
|
|
187
|
+
> "[Outcome] or [dramatic consequence for seller]"
|
|
188
|
+
> "Try it for [time period]. [Specific guarantee]."
|
|
189
|
+
|
|
190
|
+
Works when: Risk is the primary objection. Confidence in delivery is high.
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Output format
|
|
195
|
+
|
|
196
|
+
When finding angles, deliver this:
|
|
197
|
+
|
|
198
|
+
### Angle Options for [Product/Offer]
|
|
199
|
+
|
|
200
|
+
**Angle 1: [Name]**
|
|
201
|
+
|
|
202
|
+
- The angle: [One sentence positioning]
|
|
203
|
+
- Why it works: [Psychology/market insight]
|
|
204
|
+
- Headline direction: "[Example headline]"
|
|
205
|
+
- When to use: [Conditions where this angle is strongest]
|
|
206
|
+
|
|
207
|
+
**Angle 2: [Name]**
|
|
208
|
+
|
|
209
|
+
- The angle: [One sentence positioning]
|
|
210
|
+
- Why it works: [Psychology/market insight]
|
|
211
|
+
- Headline direction: "[Example headline]"
|
|
212
|
+
- When to use: [Conditions where this angle is strongest]
|
|
213
|
+
|
|
214
|
+
**Angle 3: [Name]**
|
|
215
|
+
|
|
216
|
+
- The angle: [One sentence positioning]
|
|
217
|
+
- Why it works: [Psychology/market insight]
|
|
218
|
+
- Headline direction: "[Example headline]"
|
|
219
|
+
- When to use: [Conditions where this angle is strongest]
|
|
220
|
+
|
|
221
|
+
[Continue for 4-5 total options]
|
|
222
|
+
|
|
223
|
+
**Recommended starting point:** [Which angle to test first and why]
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Example: Finding angles for a "Claude Skills Pack"
|
|
228
|
+
|
|
229
|
+
### Context
|
|
230
|
+
|
|
231
|
+
- Product: 10 marketing skills for Claude Code
|
|
232
|
+
- Transformation: Better marketing output without becoming a marketer
|
|
233
|
+
- Alternatives: Generic prompting, hiring copywriters, learning marketing yourself
|
|
234
|
+
- Mechanism: Skills transfer expertise through principles, not just prompts
|
|
235
|
+
|
|
236
|
+
### Angle Options
|
|
237
|
+
|
|
238
|
+
**Angle 1: The Capability Transfer**
|
|
239
|
+
|
|
240
|
+
- The angle: Give Claude marketing superpowers so you don't need them yourself
|
|
241
|
+
- Why it works: Buyers want the outcome without the learning curve
|
|
242
|
+
- Headline direction: "Turn Claude into a marketing team that actually sells."
|
|
243
|
+
- When to use: Audience is technical/builder-focused, not marketing-focused
|
|
244
|
+
|
|
245
|
+
**Angle 2: The Anti-Generic**
|
|
246
|
+
|
|
247
|
+
- The angle: Stop getting generic AI output that sounds like everyone else
|
|
248
|
+
- Why it works: Universal frustration with AI output quality
|
|
249
|
+
- Headline direction: "Same Claude. Different playbook. 10x output."
|
|
250
|
+
- When to use: Audience has tried Claude and been disappointed
|
|
251
|
+
|
|
252
|
+
**Angle 3: The Methodology Transfer**
|
|
253
|
+
|
|
254
|
+
- The angle: Packaged expertise from $400k+ in real results
|
|
255
|
+
- Why it works: Credibility through specific proof, not theory
|
|
256
|
+
- Headline direction: "The marketing methodology behind $400k+ in 9 months—now packaged for Claude."
|
|
257
|
+
- When to use: Audience values proven systems over promises
|
|
258
|
+
|
|
259
|
+
**Angle 4: The Time Recapture**
|
|
260
|
+
|
|
261
|
+
- The angle: Stop spending hours on AI babysitting
|
|
262
|
+
- Why it works: Quantifies the hidden cost of current approach
|
|
263
|
+
- Headline direction: "You're burning 10+ hours a month on AI babysitting. Skills fix this."
|
|
264
|
+
- When to use: Audience is time-constrained, values efficiency
|
|
265
|
+
|
|
266
|
+
**Angle 5: The Specialist Unlock**
|
|
267
|
+
|
|
268
|
+
- The angle: Access copywriter/marketer expertise without hiring one
|
|
269
|
+
- Why it works: Positions against the expensive alternative
|
|
270
|
+
- Headline direction: "Specialist marketing output without specialist costs."
|
|
271
|
+
- When to use: Audience has considered hiring but balked at price
|
|
272
|
+
|
|
273
|
+
**Recommended starting point:** Angle 1 (Capability Transfer) for a technical/builder audience, Angle 3 (Methodology Transfer) for a results-focused audience.
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## How this skill gets invoked
|
|
278
|
+
|
|
279
|
+
This skill activates when:
|
|
280
|
+
|
|
281
|
+
- User asks "how should I position X"
|
|
282
|
+
- User asks "what's the angle for X"
|
|
283
|
+
- User asks "why isn't this selling"
|
|
284
|
+
- User asks to "find the hook" or "make this stand out"
|
|
285
|
+
- User is about to write copy/landing page but hasn't established positioning
|
|
286
|
+
- Direct-response-copy skill needs an angle to write from
|
|
287
|
+
- Landing-page skill needs a core positioning to build around
|
|
288
|
+
|
|
289
|
+
When another skill needs an angle, run this first. The angle informs everything downstream.
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## What this skill is NOT
|
|
294
|
+
|
|
295
|
+
This skill finds positioning and angles. It does NOT:
|
|
296
|
+
|
|
297
|
+
- Write the actual copy (that's direct-response-copy)
|
|
298
|
+
- Build the landing page structure (that's landing-page)
|
|
299
|
+
- Research the audience from scratch (assumes you know who you're selling to)
|
|
300
|
+
- Pick a single "right" answer (it gives options to choose from)
|
|
301
|
+
|
|
302
|
+
The output is strategic direction, not finished marketing.
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## The test
|
|
307
|
+
|
|
308
|
+
Before delivering angles, verify each one:
|
|
309
|
+
|
|
310
|
+
1. **Is it specific?** Vague angles ("better results") fail. Specific angles ("20 lbs in 6 weeks") convert.
|
|
311
|
+
|
|
312
|
+
2. **Is it differentiated?** Could a competitor claim the same thing? If yes, sharpen it.
|
|
313
|
+
|
|
314
|
+
3. **Is it believable?** Does the mechanism or proof support the claim?
|
|
315
|
+
|
|
316
|
+
4. **Is it relevant to THIS audience?** An angle that works for beginners fails for experts.
|
|
317
|
+
|
|
318
|
+
5. **Does it lead somewhere?** Can you imagine the headline, the landing page, the copy? If not, it's too abstract.
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
## References
|
|
323
|
+
|
|
324
|
+
For deeper frameworks, see the `references/` folder:
|
|
325
|
+
|
|
326
|
+
- `dunford-positioning.md` — April Dunford's 5-component positioning methodology
|
|
327
|
+
- `schwartz-sophistication.md` — Eugene Schwartz's market awareness levels
|
|
328
|
+
- `unique-mechanism.md` — How to find and name your mechanism
|
|
329
|
+
- `angle-frameworks.md` — Halbert, Ogilvy, Hopkins, Bencivenga, Kennedy approaches
|
|
330
|
+
- `hormozi-offer.md` — Value equation and Grand Slam Offer thinking
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: "pr-review-toolkit"
|
|
3
|
+
title: "PR Review Toolkit"
|
|
4
|
+
category: "dev-tools"
|
|
5
|
+
tags: ["pr review toolkit", "overview", "agents", "usage patterns", "installation", "find 'pr-review-toolkit'", "install", "agent details", "best practices", "tips"]
|
|
6
|
+
triggers: []
|
|
7
|
+
dependencies: []
|
|
8
|
+
source: "E:/Bobo's Coding cache/.claude/skills/pr-review-toolkit"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# PR Review Toolkit
|
|
12
|
+
|
|
13
|
+
A comprehensive collection of specialized agents for thorough pull request review, covering code comments, test coverage, error handling, type design, code quality, and code simplification.
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
This plugin bundles 6 expert review agents that each focus on a specific aspect of code quality. Use them individually for targeted reviews or together for comprehensive PR analysis.
|
|
18
|
+
|
|
19
|
+
## Agents
|
|
20
|
+
|
|
21
|
+
### 1. comment-analyzer
|
|
22
|
+
|
|
23
|
+
**Focus**: Code comment accuracy and maintainability
|
|
24
|
+
|
|
25
|
+
**Analyzes:**
|
|
26
|
+
|
|
27
|
+
- Comment accuracy vs actual code
|
|
28
|
+
- Documentation completeness
|
|
29
|
+
- Comment rot and technical debt
|
|
30
|
+
- Misleading or outdated comments
|
|
31
|
+
|
|
32
|
+
**When to use:**
|
|
33
|
+
|
|
34
|
+
- After adding documentation
|
|
35
|
+
- Before finalizing PRs with comment changes
|
|
36
|
+
- When reviewing existing comments
|
|
37
|
+
|
|
38
|
+
**Triggers:**
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
"Check if the comments are accurate"
|
|
42
|
+
"Review the documentation I added"
|
|
43
|
+
"Analyze comments for technical debt"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### 2. pr-test-analyzer
|
|
47
|
+
|
|
48
|
+
**Focus**: Test coverage quality and completeness
|
|
49
|
+
|
|
50
|
+
**Analyzes:**
|
|
51
|
+
|
|
52
|
+
- Behavioral vs line coverage
|
|
53
|
+
- Critical gaps in test coverage
|
|
54
|
+
- Test quality and resilience
|
|
55
|
+
- Edge cases and error conditions
|
|
56
|
+
|
|
57
|
+
**When to use:**
|
|
58
|
+
|
|
59
|
+
- After creating a PR
|
|
60
|
+
- When adding new functionality
|
|
61
|
+
- To verify test thoroughness
|
|
62
|
+
|
|
63
|
+
**Triggers:**
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
"Check if the tests are thorough"
|
|
67
|
+
"Review test coverage for this PR"
|
|
68
|
+
"Are there any critical test gaps?"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### 3. silent-failure-hunter
|
|
72
|
+
|
|
73
|
+
**Focus**: Error handling and silent failures
|
|
74
|
+
|
|
75
|
+
**Analyzes:**
|
|
76
|
+
|
|
77
|
+
- Silent failures in catch blocks
|
|
78
|
+
- Inadequate error handling
|
|
79
|
+
- Inappropriate fallback behavior
|
|
80
|
+
- Missing error logging
|
|
81
|
+
|
|
82
|
+
**When to use:**
|
|
83
|
+
|
|
84
|
+
- After implementing error handling
|
|
85
|
+
- When reviewing try/catch blocks
|
|
86
|
+
- Before finalizing PRs with error handling
|
|
87
|
+
|
|
88
|
+
**Triggers:**
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
"Review the error handling"
|
|
92
|
+
"Check for silent failures"
|
|
93
|
+
"Analyze catch blocks in this PR"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### 4. type-design-analyzer
|
|
97
|
+
|
|
98
|
+
**Focus**: Type design quality and invariants
|
|
99
|
+
|
|
100
|
+
**Analyzes:**
|
|
101
|
+
|
|
102
|
+
- Type encapsulation (rated 1-10)
|
|
103
|
+
- Invariant expression (rated 1-10)
|
|
104
|
+
- Type usefulness (rated 1-10)
|
|
105
|
+
- Invariant enforcement (rated 1-10)
|
|
106
|
+
|
|
107
|
+
**When to use:**
|
|
108
|
+
|
|
109
|
+
- When introducing new types
|
|
110
|
+
- During PR creation with data models
|
|
111
|
+
- When refactoring type designs
|
|
112
|
+
|
|
113
|
+
**Triggers:**
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
"Review the UserAccount type design"
|
|
117
|
+
"Analyze type design in this PR"
|
|
118
|
+
"Check if this type has strong invariants"
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 5. code-reviewer
|
|
122
|
+
|
|
123
|
+
**Focus**: General code review for project guidelines
|
|
124
|
+
|
|
125
|
+
**Analyzes:**
|
|
126
|
+
|
|
127
|
+
- CLAUDE.md compliance
|
|
128
|
+
- Style violations
|
|
129
|
+
- Bug detection
|
|
130
|
+
- Code quality issues
|
|
131
|
+
|
|
132
|
+
**When to use:**
|
|
133
|
+
|
|
134
|
+
- After writing or modifying code
|
|
135
|
+
- Before committing changes
|
|
136
|
+
- Before creating pull requests
|
|
137
|
+
|
|
138
|
+
**Triggers:**
|
|
139
|
+
|
|
140
|
+
```
|
|
141
|
+
"Review my recent changes"
|
|
142
|
+
"Check if everything looks good"
|
|
143
|
+
"Review this code before I commit"
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### 6. code-simplifier
|
|
147
|
+
|
|
148
|
+
**Focus**: Code simplification and refactoring
|
|
149
|
+
|
|
150
|
+
**Analyzes:**
|
|
151
|
+
|
|
152
|
+
- Code clarity and readability
|
|
153
|
+
- Unnecessary complexity and nesting
|
|
154
|
+
- Redundant code and abstractions
|
|
155
|
+
- Consistency with project standards
|
|
156
|
+
- Overly compact or clever code
|
|
157
|
+
|
|
158
|
+
**When to use:**
|
|
159
|
+
|
|
160
|
+
- After writing or modifying code
|
|
161
|
+
- After passing code review
|
|
162
|
+
- When code works but feels complex
|
|
163
|
+
|
|
164
|
+
**Triggers:**
|
|
165
|
+
|
|
166
|
+
```
|
|
167
|
+
"Simplify this code"
|
|
168
|
+
"Make this clearer"
|
|
169
|
+
"Refine this implementation"
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Note**: This agent preserves functionality while improving code structure and maintainability.
|
|
173
|
+
|
|
174
|
+
## Usage Patterns
|
|
175
|
+
|
|
176
|
+
### Individual Agent Usage
|
|
177
|
+
|
|
178
|
+
Simply ask questions that match an agent's focus area, and Claude will automatically trigger the appropriate agent:
|
|
179
|
+
|
|
180
|
+
```
|
|
181
|
+
"Can you check if the tests cover all edge cases?"
|
|
182
|
+
→ Triggers pr-test-analyzer
|
|
183
|
+
|
|
184
|
+
"Review the error handling in the API client"
|
|
185
|
+
→ Triggers silent-failure-hunter
|
|
186
|
+
|
|
187
|
+
"I've added documentation - is it accurate?"
|
|
188
|
+
→ Triggers comment-analyzer
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### Comprehensive PR Review
|
|
192
|
+
|
|
193
|
+
For thorough PR review, ask for multiple aspects:
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
"I'm ready to create this PR. Please:
|
|
197
|
+
1. Review test coverage
|
|
198
|
+
2. Check for silent failures
|
|
199
|
+
3. Verify code comments are accurate
|
|
200
|
+
4. Review any new types
|
|
201
|
+
5. General code review"
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
This will trigger all relevant agents to analyze different aspects of your PR.
|
|
205
|
+
|
|
206
|
+
### Proactive Review
|
|
207
|
+
|
|
208
|
+
Claude may proactively use these agents based on context:
|
|
209
|
+
|
|
210
|
+
- **After writing code** → code-reviewer
|
|
211
|
+
- **After adding docs** → comment-analyzer
|
|
212
|
+
- **Before creating PR** → Multiple agents as appropriate
|
|
213
|
+
- **After adding types** → type-design-analyzer
|
|
214
|
+
|
|
215
|
+
## Installation
|
|
216
|
+
|
|
217
|
+
Install from your personal marketplace:
|
|
218
|
+
|
|
219
|
+
```bash
|
|
220
|
+
/plugins
|
|
221
|
+
# Find "pr-review-toolkit"
|
|
222
|
+
# Install
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Or add manually to settings if needed.
|
|
226
|
+
|
|
227
|
+
## Agent Details
|
|
228
|
+
|
|
229
|
+
### Confidence Scoring
|
|
230
|
+
|
|
231
|
+
Agents provide confidence scores for their findings:
|
|
232
|
+
|
|
233
|
+
**comment-analyzer**: Identifies issues with high confidence in accuracy checks
|
|
234
|
+
|
|
235
|
+
**pr-test-analyzer**: Rates test gaps 1-10 (10 = critical, must add)
|
|
236
|
+
|
|
237
|
+
**silent-failure-hunter**: Flags severity of error handling issues
|
|
238
|
+
|
|
239
|
+
**type-design-analyzer**: Rates 4 dimensions on 1-10 scale
|
|
240
|
+
|
|
241
|
+
**code-reviewer**: Scores issues 0-100 (91-100 = critical)
|
|
242
|
+
|
|
243
|
+
**code-simplifier**: Identifies complexity and suggests simplifications
|
|
244
|
+
|
|
245
|
+
### Output Formats
|
|
246
|
+
|
|
247
|
+
All agents provide structured, actionable output:
|
|
248
|
+
|
|
249
|
+
- Clear issue identification
|
|
250
|
+
- Specific file and line references
|
|
251
|
+
- Explanation of why it's a problem
|
|
252
|
+
- Suggestions for improvement
|
|
253
|
+
- Prioritized by severity
|
|
254
|
+
|
|
255
|
+
## Best Practices
|
|
256
|
+
|
|
257
|
+
### When to Use Each Agent
|
|
258
|
+
|
|
259
|
+
**Before Committing:**
|
|
260
|
+
|
|
261
|
+
- code-reviewer (general quality)
|
|
262
|
+
- silent-failure-hunter (if changed error handling)
|
|
263
|
+
|
|
264
|
+
**Before Creating PR:**
|
|
265
|
+
|
|
266
|
+
- pr-test-analyzer (test coverage check)
|
|
267
|
+
- comment-analyzer (if added/modified comments)
|
|
268
|
+
- type-design-analyzer (if added/modified types)
|
|
269
|
+
- code-reviewer (final sweep)
|
|
270
|
+
|
|
271
|
+
**After Passing Review:**
|
|
272
|
+
|
|
273
|
+
- code-simplifier (improve clarity and maintainability)
|
|
274
|
+
|
|
275
|
+
**During PR Review:**
|
|
276
|
+
|
|
277
|
+
- Any agent for specific concerns raised
|
|
278
|
+
- Targeted re-review after fixes
|
|
279
|
+
|
|
280
|
+
### Running Multiple Agents
|
|
281
|
+
|
|
282
|
+
You can request multiple agents to run in parallel or sequentially:
|
|
283
|
+
|
|
284
|
+
**Parallel** (faster):
|
|
285
|
+
|
|
286
|
+
```
|
|
287
|
+
"Run pr-test-analyzer and comment-analyzer in parallel"
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
**Sequential** (when one informs the other):
|
|
291
|
+
|
|
292
|
+
```
|
|
293
|
+
"First review test coverage, then check code quality"
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
## Tips
|
|
297
|
+
|
|
298
|
+
- **Be specific**: Target specific agents for focused review
|
|
299
|
+
- **Use proactively**: Run before creating PRs, not after
|
|
300
|
+
- **Address critical issues first**: Agents prioritize findings
|
|
301
|
+
- **Iterate**: Run again after fixes to verify
|
|
302
|
+
- **Don't over-use**: Focus on changed code, not entire codebase
|
|
303
|
+
|
|
304
|
+
## Troubleshooting
|
|
305
|
+
|
|
306
|
+
### Agent Not Triggering
|
|
307
|
+
|
|
308
|
+
**Issue**: Asked for review but agent didn't run
|
|
309
|
+
|
|
310
|
+
**Solution**:
|
|
311
|
+
|
|
312
|
+
- Be more specific in your request
|
|
313
|
+
- Mention the agent type explicitly
|
|
314
|
+
- Reference the specific concern (e.g., "test coverage")
|
|
315
|
+
|
|
316
|
+
### Agent Analyzing Wrong Files
|
|
317
|
+
|
|
318
|
+
**Issue**: Agent reviewing too much or wrong files
|
|
319
|
+
|
|
320
|
+
**Solution**:
|
|
321
|
+
|
|
322
|
+
- Specify which files to focus on
|
|
323
|
+
- Reference the PR number or branch
|
|
324
|
+
- Mention "recent changes" or "git diff"
|
|
325
|
+
|
|
326
|
+
## Integration with Workflow
|
|
327
|
+
|
|
328
|
+
This plugin works great with:
|
|
329
|
+
|
|
330
|
+
- **build-validator**: Run build/tests before review
|
|
331
|
+
- **Project-specific agents**: Combine with your custom agents
|
|
332
|
+
|
|
333
|
+
**Recommended workflow:**
|
|
334
|
+
|
|
335
|
+
1. Write code → **code-reviewer**
|
|
336
|
+
2. Fix issues → **silent-failure-hunter** (if error handling)
|
|
337
|
+
3. Add tests → **pr-test-analyzer**
|
|
338
|
+
4. Document → **comment-analyzer**
|
|
339
|
+
5. Review passes → **code-simplifier** (polish)
|
|
340
|
+
6. Create PR
|
|
341
|
+
|
|
342
|
+
## Contributing
|
|
343
|
+
|
|
344
|
+
Found issues or have suggestions? These agents are maintained in:
|
|
345
|
+
|
|
346
|
+
- User agents: `~/.claude/agents/`
|
|
347
|
+
- Project agents: `.claude/agents/` in claude-cli-internal
|
|
348
|
+
|
|
349
|
+
## License
|
|
350
|
+
|
|
351
|
+
MIT
|
|
352
|
+
|
|
353
|
+
## Author
|
|
354
|
+
|
|
355
|
+
Daisy (daisy@anthropic.com)
|
|
356
|
+
|
|
357
|
+
---
|
|
358
|
+
|
|
359
|
+
**Quick Start**: Just ask for review and the right agent will trigger automatically!
|