community-signals — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited community-signals (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Extract high-intent leads from developer community forums by detecting buying signals in public discussions. Currently supports Hacker News and Reddit.
requests and optionally python-dotenv.env (for Reddit scraping)Ask the user for the following. Do NOT proceed without this — the entire query generation depends on it.
"To find the right leads from developer communities, I need to understand: 1. What does your product do? (one-liner) 2. Who are your competitors? (list the main ones) 3. What specific problems does your product solve? (the pain points) 4. Who is your ideal buyer? (role, company type, tech stack) 5. Any specific technologies or keywords associated with your space?"
If the user has already provided this context (e.g., from running the github-repo-signals skill), use that — don't ask again.
Based on the user's product info, generate 3-5 search queries per category. These are the fixed categories — do not skip any:
Category 1: Alternative Seeking (intent score: 9) People actively looking to switch tools.
Category 2: Competitor Pain (intent score: 8) People frustrated with a specific competitor.
Category 3: Problem Space Questions (intent score: 6) People trying to solve the exact problem the product addresses.
Category 4: Tool Comparison (intent score: 8) People actively comparing options — in buying mode.
Category 5: DIY / Built Own Solution (intent score: 9) People who built a custom solution — validated the need, would pay for a proper product.
Category 6: Scaling Challenges (intent score: 7) People hitting limits that the product solves.
Category 7: Migration Intent (intent score: 9) People who have already decided to leave — looking for where to go.
Category 8: Budget / Pricing Pain (intent score: 7) Cost is the trigger — open to cheaper or better-value alternatives.
Category 9: Feature Gap Complaints (intent score: 7) Needs something their current tool doesn't do — and the user's product does.
Do a web search to find subreddits where the user's ICP is active. Search for:
Common developer subreddits to consider (pick the relevant ones):
Select 5-10 subreddits most relevant to the user's space.
Present ALL generated queries to the user in a structured table:
Category | Queries
--------------------------|------------------------------------------
Alternative Seeking | "twilio alternative", "agora alternative", ...
Competitor Pain | "twilio issues", "frustrated with agora", ...
... | ...
Subreddits to scan: r/webdev, r/VOIP, r/programming, ...Ask:
"Here are the search queries I've generated. Would you like to: 1. Run with these as-is 2. Add or remove specific queries 3. Add or remove subreddits
>
Estimated cost: HN is free. Reddit via Apify will cost approximately $[estimate based on query count x ~$0.05 per query]."
Wait for user approval before proceeding.
Once approved, save the queries as a JSON file:
cat > ${CLAUDE_SKILL_DIR}/../.tmp/community_queries.json << 'QUERIESEOF'
{
"product": "Product Name",
"queries": [
{"category": "alternative_seeking", "query": "twilio alternative"},
{"category": "alternative_seeking", "query": "agora alternative"},
{"category": "competitor_pain", "query": "twilio video quality issues"}
],
"subreddits": ["r/webdev", "r/VOIP", "r/programming"]
}
QUERIESEOFpython3 -c "import requests; print('OK')"python3 ${CLAUDE_SKILL_DIR}/scripts/community_signals.py \
--queries ${CLAUDE_SKILL_DIR}/../.tmp/community_queries.json \
--days 30 \
--max-reddit-posts 50 \
--max-reddit-comments 20 \
--output ${CLAUDE_SKILL_DIR}/../.tmp/community_signals.csvThe tool will:
_users.csv and _signals.csvOptional flags:
--skip-reddit — only search HN (free, for testing)--skip-hn — only search Reddit--days 7 — narrower time window for very fresh signalsRead the output CSV files and present a structured briefing:
9a. Overall Stats
9b. Signal Category Breakdown
9c. Top Subreddits Discovered
9d. Highest-Intent Users
9e. Common Themes
Based on findings + user's product context:
"Would you like me to: 1. Enrich the top [N] users via SixtyFour (estimated cost: $X) 2. Run a deeper scan on the hotspot subreddits 3. Export this data for manual review first 4. Combine these results with GitHub signals data (if available)"
Wait for user confirmation.
`community_signals_users.csv` — One row per unique user across all platforms
| Column | Description |
|---|---|
| username | Forum username |
| platform | hackernews or reddit |
| composite_score | Overall lead score (intent + diversity + cross-platform) |
| intent_score | Sum of category-weighted intent scores |
| signal_count | Number of matching posts/comments |
| categories | Which signal categories they appeared in |
| platforms_active | Which platforms they were found on |
| subreddits | Reddit subreddits they posted in |
| hn_karma | HN karma score (HN users only) |
| hn_bio | HN profile bio (HN users only) |
| total_engagement | Sum of upvotes + comments across their signals |
| first_seen | Earliest matching post/comment |
| latest_seen | Most recent matching post/comment |
| sample_url | Link to one of their matching posts |
`community_signals_signals.csv` — One row per matching post/comment
| Column | Description |
|---|---|
| platform | hackernews or reddit |
| author | Username |
| category | Signal category code |
| category_label | Human-readable category name |
| content_type | story, comment, or post |
| title | Post/story title |
| text | Post/comment body (truncated) |
| subreddit | Reddit subreddit (if applicable) |
| score | Upvotes |
| num_comments | Comment count |
| created_at | Date posted |
| query_matched | Which search query found this |
| url | Permalink to the post/comment |
Intent scores by category:
| Category | Score per Signal |
|---|---|
| Alternative Seeking | 9 |
| DIY / Built Own | 9 |
| Migration Intent | 9 |
| Competitor Pain | 8 |
| Tool Comparison | 8 |
| Scaling Challenge | 7 |
| Budget / Pricing | 7 |
| Feature Gap | 7 |
| Problem Space | 6 |
Composite score bonuses:
| Platform | Cost | Notes |
|---|---|---|
| Hacker News | Free | Algolia API, 10k req/hr |
| Reddit (Apify) | ~$0.004/result + $0.04/run | Pay per result |
| Typical run (45 queries) | ~$5-10 total | HN free + Reddit ~$5-10 |
created_at timestamps.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.