AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Reddit

skill-sky-flux-skills-reddit · by sky-flux

>-

No reviews yet
0 installs
5 views
0.0% view→install

Install

$ agentstack add skill-sky-flux-skills-reddit

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-sky-flux-skills-reddit)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Reddit? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Reddit Opportunity Hunter

Mission

Product Opportunity Hunting, NOT Lead Hunting.

  • Input: Reddit discussions from high-purchasing-power markets
  • Output: Actionable product opportunity reports with build assessments
  • Goal: Surface 1-2 week MVP opportunities in USD/EUR/GBP markets
  • You are scanning for patterns of unmet need, not individual sales leads
  • Every recommendation must pass the Solo Dev Fit test before being highlighted
  • Reference data lives in references/ — subreddits, keywords, seasonal patterns

Quick Start / First Run

  1. Install dependencies: brew install curl jq
  2. Run health check: reddit.sh diagnose — verifies curl, jq, network connectivity
  3. The script auto-creates .reddit/ with reports/, opportunities/, archive/
  4. Verify .gitignore includes .reddit/ — the script warns if missing
  5. Review references/subreddits.json — confirm subreddits match the user's domain
  6. Review references/intent_keywords.json — adjust if the user targets a specific niche
  7. Configure preferences: reddit.sh config show — set language, industries, currency
  8. First scan:

``bash reddit.sh fetch --campaign global_english --sort new --pages 1 ``

  1. Inspect the enriched JSON output, then proceed to Phase 2 (Analysis)

Configuration

On first run, .reddit/config.json is auto-created with defaults. Check and customize it:

reddit.sh config show          # view current config
reddit.sh config set     # change a setting
reddit.sh config reset         # restore defaults

| Setting | Description | Default | Example | |---------|-------------|---------|---------| | output_language | Language for reports and analysis | en | zh, ja, de | | focus_industries | Only surface opportunities in these industries | [] (all) | ["SaaS","DevTools"] | | excluded_subreddits | Skip these subreddits during scan | [] | ["Entrepreneur"] | | score_threshold | Minimum score to include in reports | 7 | 8 | | max_build_complexity | Filter out opportunities above this level | Heavy | Medium | | currency_display | Currency for revenue estimates | USD | CNY, EUR | | sub_quality_threshold | Minimum quality score for auto-adding discovered subs | 7.0 | 6.0 |

First-run prompt: If no config.json exists when the skill is triggered, ask the user:

> "This is your first time using Reddit Opportunity Hunter. Quick setup: > 1. What language should reports be in? (default: en) > 2. Any industries to focus on? (default: all) > 3. What currency for revenue estimates? (default: USD) > > Or say 'use defaults' to skip."

Save answers via reddit.sh config set.

Core Workflow

Two modes: broad scan (default loop) or focused investigation (user asks about a specific topic).

For focused investigation (e.g., "deep-dive QuickBooks pain points"):

  1. Identify the most relevant campaign(s) — match user's topic to campaigns in subreddits.json
  2. Fetch those campaigns + global_english for cross-market signal
  3. Run targeted searches: reddit.sh search " frustrated" --global, reddit.sh search " alternative" --global
  4. Skip straight to Phase 2-3 analysis on the focused data set
  5. Produce detailed opportunity reports for the specific vertical

For broad scan (loop cycle or general scan):

Phase 1: Data Collection

Run reddit.sh fetch for each campaign defined in references/subreddits.json, ordered by scan_priority:

reddit.sh fetch --campaign global_english --sort new --pages 2
reddit.sh fetch --campaign dach_german --sort new --pages 1
reddit.sh fetch --campaign nordic_scandi --sort new --pages 1

Key details:

  • Multi-sub merge: the script combines subreddits as r/A+B+C/new.json to reduce API calls
  • Output is enriched JSON — jq computes _jq_enriched fields (intent matches, sentiment, age)
  • Do NOT re-compute what jq already provides; read the enriched fields directly
  • Rate limit budget: ~100 requests per ~260 seconds; a single fetch loop uses ~40-45
  • Fetch Tier S campaigns every loop, Tier A daily, Tier B weekly
  • Campaign selection: when the user specifies a domain (e.g., "DevTools and marketing"), fetch matching vertical campaigns + global_english. Don't fetch all campaigns — respect the user's focus.

Phase 2: Analysis (Claude)

Before analyzing, read user config:

  • reddit.sh config show — check output_language, focus_industries, score_threshold
  • CRITICAL: Write ALL reports, analysis, section headers, and commentary in the configured output_language. If output_language is zh, every line of output must be Chinese (keep only numbers, scores, URLs, subreddit names, product names, and technical terms in English). This applies to every loop cycle — not just the first one.
  • If focus_industries is set, prioritize opportunities matching those industries
  • If excluded_subreddits is set, skip posts from those subreddits
  • Use currency_display when estimating revenue (convert from USD)
  • Only include opportunities with final_score >= score_threshold
  • Only include opportunities with complexity ≤ max_build_complexity

Read the enriched JSON from Phase 1. For each batch:

  1. Pain point clustering — group similar complaints across posts and subreddits
  2. Frequency counting — how many posts mention this pain this week?
  3. Intensity assessment — use intent_keywords_matched and negative_signals from the enriched data
  4. Market validation signals — look for: budget mentions, team size, already_tried products, willingness to pay
  5. Score each opportunity using the scoring algorithm below
  6. Deduplicate against seen_posts in .reddit/.reddit.json

Phase 3: Deep Verification (score >= 8, or high-engagement posts)

Fetch comment trees for posts that meet any of these triggers:

  • Opportunity score >= 8
  • High engagement: >= 20 comments or >= 30 upvotes on a niche subreddit
  • Tier 1-2 intent signals with specific budget mentions

For each triggered post:

  1. Fetch comment trees: reddit.sh comments
  2. Search competitive landscape: reddit.sh search "competitor alternative" --global
  3. Add post to watched_threads for ongoing monitoring
  4. Optional: use WebSearch for cross-platform validation (Twitter/X, HN, G2, Capterra)

Phase 3.5: Micro-Validation

Before promoting an opportunity to "validated":

  • Suggest a landing page smoke test to the user
  • Cross-platform search: Twitter/X, Hacker News, Indie Hackers for the same pain
  • Search for failed attempts at similar products (important signal)
  • Check Product Hunt / GitHub for recent launches in the space

Phase 4: Report

  • Daily scan report -> .reddit/reports/YYYY-MM-DD-scan.md
  • High-value opportunities -> .reddit/opportunities/.md
  • Scoring breakdown -> include a scoring-breakdown.md when producing >= 3 opportunities, showing per-dimension scores so the user can see why each opportunity ranked where it did
  • Use the templates defined below

reddit.sh Reference

| Mode | Usage | Purpose | |------|-------|---------| | fetch | reddit.sh fetch --campaign X --sort new --pages 2 | Fetch & enrich posts | | comments | reddit.sh comments | Comment tree for deep-dive | | search | reddit.sh search "query" [--global] [--type post\|user\|subreddit] | Reddit search | | discover | reddit.sh discover [--deep\|--from-sub\|--industry] | Find new subreddits | | profile | reddit.sh profile [--enrich] | User history analysis | | crosspost | reddit.sh crosspost [--campaign X] | Cross-poster detection | | stickied | reddit.sh stickied [subreddit] | Stickied post mining | | firehose | reddit.sh firehose [sub1+sub2] | Real-time comment stream | | duplicates | reddit.sh duplicates | Link propagation tracking | | wiki | reddit.sh wiki [page] | Community wiki content | | stats | reddit.sh stats | Database / state statistics | | export | reddit.sh export [--format csv\|json] | CRM-ready export | | cleanup | reddit.sh cleanup | Purge expired data | | diagnose | reddit.sh diagnose | Health check (jq, dirs, state) | | config | reddit.sh config [show\|set \|reset] | User preferences | | expand | reddit.sh expand --campaign X | Targeted campaign expansion | | quality | reddit.sh quality [--report\|--history ] | Sub quality report + EMA history | | promote | reddit.sh promote --campaign X | Move discovered sub to tracked config |

Helper functions (called during loop cycles, not directly by user):

  • watch_check — check watched threads for new comments since last check
  • competitor_search — expand competitor query templates from config
  • update_subreddit_quality [opportunities] — track hit rates per subreddit

Discovery → Promote Pipeline

When finding new subreddits for a campaign:

  1. reddit.sh discover "" --deep — probes candidate subs (15-25 API calls per query)
  2. Review discovery results — check painposts, avgcomments, competitor_posts
  3. Quality-score each candidate using the multi-dimension algorithm (pain density, engagement, competitor mentions, growth rate, etc.)
  4. For subs scoring >= sub_quality_threshold: reddit.sh promote --campaign
  5. For borderline subs (threshold - 1.0 to threshold): flag as "monitor" for re-evaluation next week

Rate limit caution: --deep discovery uses 15-25 requests per query. Run at most 2-3 discovery queries per session. If you hit 429 rate limits, stop discovery and resume in the next cycle.

Scoring Algorithm

raw_score = intensity      * 0.20
          + competitive_gap * 0.20
          + build_feasibility * 0.20
          + market_value   * 0.20
          + frequency      * 0.15
          + timeliness     * 0.05

Each dimension is scored 1-10 individually.

Adjustments:

adjusted = raw_score
  + cross_market_bonus   (same pain in 3+ Tier S markets -> +1.5)
  + seasonal_bonus       (matches upcoming seasonal pattern -> +1.0; just passed -> -1.0)
  - false_positive_penalty (see below)

final_score = clamp(adjusted, 1, 10)

Weekly decay: if no new mentions this week: final_score *= 0.88

Market tier bonuses (applied to market_value dimension, not final score):

  • Tier S (US, UK, DE, FR, NL, JP, AU, KR, Nordics): +3
  • Tier A (IN, BR, SEA, LATAM, PL, CZ): +1
  • Tier B (Africa, South Asia, rest): +0

Thresholds:

  • >= 8: Deep verification (Phase 3) + highlight in report
  • >= 7: Show in daily report under New Opportunities
  • 5k GitHub stars): -2
  • Requires enterprise sales process: mark as "not solo dev fit", do not penalize score but flag

Intent Tiers

Reference references/intent_keywords.json for the full keyword list. You classify intent tier from context — jq only provides raw keyword matches.

| Tier | Signal | Examples | |------|--------|---------| | 1 | Direct purchase intent | "willing to pay", "budget for", "take my money" | | 2 | Active solution seeking | "looking for a tool", "switching from", "need alternative" | | 3 | Pain expression | "frustrated with", "too expensive", "waste of time" | | 4 | Research | "what do you use for", "best practices", "recommendations" | | 5 | Indirect signals | Domain discussions implying unmet need |

Solo Dev Fit Assessment

Evaluate independently of opportunity score. All must be true for a pass:

  • Build time = 7)

[Opportunity cards with score, pain summary, top source post]

Trending Pain Points

[Clusters below threshold but gaining frequency]

Time-Sensitive (= 8 → alert: OPPORTUNITY: [title] (score X.X)

  1. update_subreddit_quality with hit rates

Scheduled reports:

  • Weekly summary: trigger on Sundays (or first loop after Sunday midnight)
  • Monthly summary: last day of month (or first loop after)
  • If a scheduled report was missed, generate it on next run

State Management

.reddit/.reddit.json tracks:

| Key | Purpose | TTL | |-----|---------|-----| | seen_posts | Deduplication | 30 days | | watched_threads | Monitor for new comments | 7 days default | | opportunities | Lifecycle tracking | Permanent | | products_seen | Known tools/competitors | Permanent | | influencers | High-value Reddit users | Permanent | | community_overlap | Cross-sub posting patterns | 30 days | | subreddit_quality | Hit rate per subreddit | Permanent |

Opportunity lifecycle: discovered -> investigating -> validated -> building -> launched -> revenue -> archived

Safety

  • Public data only — no PII beyond Reddit usernames
  • Rate limit compliant — respect the ~100 req/260s budget
  • .reddit/ must be in .gitignore — never commit user data
  • Reply drafts always marked [REVIEW BEFORE POSTING]
  • Suggest max 5 replies per day to avoid spam patterns

Skill Integration

Related skills for downstream workflows:

  • content-strategy — turn validated pain points into content calendars
  • copywriting — turn opportunities into landing page copy
  • competitor-alternatives — deep competitive analysis
  • cold-email — draft outreach / DM templates
  • social-content — repurpose Reddit insights for social posts

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.