accessibility
FreeEnsure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.
The English summary is being prepared. Showing the original description.
Use when monitoring online forums (Reddit, HN, ProductHunt) for recurring user pain points, feature requests, and unmet needs. Invoke for market research, pain-point discovery, trend detection, and competitive intelligence. Designed for scheduled execution via CronCreate.
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Systematic workflow for monitoring online communities to discover recurring user pain points. Transforms unstructured forum discussions into ranked, evidence-backed opportunity reports suitable for automated app generation pipelines.
Core principle: Pain points with high frequency and high engagement are the strongest product signals. Monitor, classify, rank, report.
This skill is designed to run on a schedule via CronCreate:
CronCreate({
name: 'weekly-forum-scan',
schedule: '0 9 * * MON', // Every Monday at 9 AM
prompt:
'Run forum monitor scan for [target domain]. Invoke Skill({ skill: "forum-monitor" }). Save report to .claude/context/reports/backend/',
});
Define the forums to monitor based on the target domain:
Forum Selection Matrix:
| Forum | Best For | Query Pattern |
|---|---|---|
| Consumer pain points, UX issues | site:reddit.com <topic> frustrating OR wish | |
| Hacker News | Developer tools, B2B SaaS | site:news.ycombinator.com <topic> |
| ProductHunt | New product gaps, feature envy | site:producthunt.com <topic> |
| Indie Hackers | Solo dev pain points, pricing | site:indiehackers.com <topic> |
| Dev.to | Developer workflow friction | site:dev.to <topic> pain OR annoy |
Query Templates:
"{topic} frustrating OR annoying OR wish OR need OR missing"
"{topic} alternative to OR better than OR looking for"
"{topic} feature request OR roadmap OR please add"
For each configured forum, execute searches and extract content:
// Search for pain points
WebSearch({ query: 'site:reddit.com {topic} frustrating OR wish OR need 2026' });
// Fetch specific threads with high engagement
WebFetch({
url: '{thread-url}',
prompt:
'Extract all complaints, feature requests, and pain points. For each, note the exact quote, upvote count, and whether others agreed.',
});
Collection Requirements:
Categorize each collected item into one of these categories:
| Category | Signal Words | Example |
|---|---|---|
missing-feature | "wish", "need", "please add", "roadmap" | "I wish Notion had offline mode" |
workflow-friction | "slow", "clunky", "takes forever" | "It takes 10 clicks to export a PDF" |
bug-report | "broken", "crashes", "error" | "The app crashes on large files" |
pricing | "expensive", "not worth", "free alt" | "Too expensive for a solo dev" |
ux-confusion | "confusing", "can't find", "intuitive" | "I had no idea where settings were" |
integration-gap | "connect to", "integrate with", "API" | "No Zapier integration available" |
Group similar pain points into clusters:
For each cluster, compute:
Opportunity Score = (Frequency x 0.4) + (Engagement x 0.3) + (Recency x 0.2) + (Sentiment Intensity x 0.1)
Where:
Write structured output to .claude/context/reports/backend/forum-monitor-report-{YYYY-MM-DD}.md:
<!-- Agent: forum-monitor-agent | Task: #{id} | Session: {date} -->
# Forum Monitor Report
**Scan Period**: {start-date} to {end-date}
**Forums Monitored**: {list}
**Total Posts Analyzed**: {count}
**Pain Point Clusters Found**: {count}
## Top Pain Points (Ranked by Opportunity Score)
| Rank | Pain Point | Category | Freq | Engagement | Score | Sources |
| ---- | ---------- | -------- | ---- | ---------- | ----- | ------- |
| 1 | [desc] | [cat] | [n] | [n] | [n.n] | [n] |
## Detailed Findings
### 1. [Pain Point Title] (Score: X.X)
**Category**: [type]
**Frequency**: [n] mentions across [n] sources
**Engagement**: [total upvotes] upvotes, [total comments] comments
**Forums**: [list of forums where this appeared]
**Representative Quotes:**
1. "[exact quote]" - [source URL] ([n] upvotes)
2. "[exact quote]" - [source URL] ([n] upvotes)
3. "[exact quote]" - [source URL] ([n] upvotes)
**App Opportunity Assessment:**
- Buildable as standalone app: YES/NO
- Estimated complexity: LOW/MEDIUM/HIGH
- Existing solutions: [list or "none found"]
- Differentiation angle: [what would make a new solution win]
| Anti-Pattern | Why It Fails | Correct Approach |
|---|---|---|
| Single-forum reports | One community is not representative | Cross-reference 2+ forums before trending |
| Subjective ranking | Personal opinion is not data | Use weighted opportunity formula |
| Missing source URLs | Downstream agents cannot validate findings | Every finding must have a clickable source |
| Stale data without date range | Trends from 2024 are not 2026 trends | Always specify scan period in report header |
| Over-counting duplicates | Same user posting in 3 threads is not 3 data points | Deduplicate by unique user + unique complaint |
browser-automation -- for deeper scraping when WebSearch/WebFetch are insufficientdeep-research -- for comprehensive investigation of specific pain pointsfeedback-analysis -- for structured sentiment and NPS analysis| Agent | Role |
|---|---|
forum-monitor-agent | Primary -- executes the full workflow |
researcher | Supporting -- deeper investigation |
app-generator-agent | Consumer -- reads reports for app ideas |
Before starting:
node .claude/lib/memory/memory-search.cjs "forum monitor pain points trends"
Read .claude/context/memory/learnings.md
After completing:
.claude/context/memory/learnings.md.claude/context/memory/issues.md.claude/context/memory/decisions.mdASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Ensure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.
The English summary is being prepared. Showing the original description.
Use when you want to improve response quality through meta-cognitive reasoning. Applies 15+ reasoning methods to reconsider and refine initial outputs.
The English summary is being prepared. Showing the original description.
N-round opposing-stance debates for trade-off analysis. Assigns pro/con roles to agents, runs structured debate rounds with quality scoring, and produces a moderator synthesis with confidence-rated recommendation. Generalizable to architecture, technology, security, and design decisions.
The English summary is being prepared. Showing the original description.
Force adversarial code review stance that eliminates confirmation bias — reviewer must find issues or re-analyze
The English summary is being prepared. Showing the original description.
Creates specialized AI agents on-demand when no existing agent matches a request. Use when the Router cannot find a suitable agent for a task. Enables self-evolution by generating persistent agents.
The English summary is being prepared. Showing the original description.
LLM-as-judge evaluation framework with 5-dimension rubric (accuracy, groundedness, coherence, completeness, helpfulness) for scoring AI-generated content quality with weighted composite scores and evidence citations
The English summary is being prepared. Showing the original description.