competitor-signals — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited competitor-signals (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
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.
Find leads by monitoring competitor product activity. Instead of looking for your prospects directly, watch your competitors' audience — every person engaging with a competitor launch is self-identifying as in-market for your category.
requests and optionally python-dotenvapi.producthunt.com/v2/oauth/applications).env (fallback for PH if API names are redacted, optional)Ask the user:
"To find leads from competitor activity, I need: 1. Who are your competitors? (product names and company names) 2. Do you know their Product Hunt slugs? (the URL path on producthunt.com/posts/SLUG) 3. Any specific competitor launches or announcements you've seen recently? 4. Are there competitors or signals you specifically want to track? (e.g., a competitor just raised funding, launched a new feature, or got press coverage)"
If the user doesn't have a complete competitor list, help them discover competitors:
2a. Product Hunt search:
2b. G2/Capterra category pages:
2c. "Alternatives to" sites:
2d. Ask the user:
"Based on my research, here are competitors I've found in your space: [list]. Are there any I'm missing? Any you'd like to exclude (e.g., not really competitors, too different in market segment)?"
For each competitor, find their PH launches:
producthunt.com/products/[competitor-name]producthunt.com/posts/SLUGFor each competitor, identify pages the agent should scrape:
Case studies page: [competitor].com/customers or [competitor].com/case-studies
Testimonials page: Often on the homepage or a dedicated page
Blog: [competitor].com/blog
Present all discovered pages to the user for review.
Before running the tool, the agent should manually scrape competitor case studies and testimonials. This is agent-driven because every competitor website has a different format.
For each competitor's case study page:
For each competitor's testimonials page:
Save all scraped data to ${CLAUDE_SKILL_DIR}/../.tmp/competitor_manual_signals.json:
[
{
"person_name": "Sarah Chen",
"company": "TechCorp",
"signal_type": "case_study_company",
"signal_label": "Competitor Case Study",
"competitor": "Twilio",
"context": "How TechCorp scaled video calls to 100K users with Twilio",
"url": "https://twilio.com/case-studies/techcorp",
"profile_url": "",
"date": "",
"source": "Manual",
"engagement": 0
}
]Search for recent articles about competitors:
For articles found:
cat > ${CLAUDE_SKILL_DIR}/../.tmp/competitor_signals_config.json << 'CONFIGEOF'
{
"competitors": ["Twilio", "Agora", "Vonage", "Daily.co"],
"product_hunt_slugs": ["twilio-video", "agora-2", "daily-co"],
"days": 90,
"manual_signals_file": "${CLAUDE_SKILL_DIR}/../.tmp/competitor_manual_signals.json",
"skip": []
}
CONFIGEOFpython3 ${CLAUDE_SKILL_DIR}/scripts/competitor_signals.py \
--config ${CLAUDE_SKILL_DIR}/../.tmp/competitor_signals_config.json \
--output ${CLAUDE_SKILL_DIR}/../.tmp/competitor_signals.csvThe tool will:
PRODUCTHUNT_TOKEN is set)10a. Switching Signals (HIGHEST PRIORITY)
10b. Case Study Companies
10c. Testimonial Authors
10d. Product Hunt Activity
10e. HN Discussion
10f. Competitor-Level Analysis
/enrich-company to understand them"Would you like me to: 1. Enrich the switching signal leads immediately (highest priority) 2. Enrich the case study companies and find decision-makers 3. Cross-reference with data from other signal skills 4. Scrape additional competitor pages for more signals 5. Export for manual review first"
| Signal Type | Score | Priority |
|---|---|---|
| Switching From/To Competitor | 9 | IMMEDIATE — active evaluation |
| Competitor Case Study Company | 9 | HIGH — proven buyer |
| Competitor Testimonial Author | 8 | HIGH — current/past user |
| PH Launch Commenter | 8 | HIGH — actively evaluating |
| HN Post Commenter | 7 | MEDIUM — interested in space |
| HN Post Author | 6 | MEDIUM — sharing competitor news |
| PH Launch Upvoter | 6 | MEDIUM — interested but passive |
| Tech Press Mention | 6 | MEDIUM — following the space |
| PH Product Maker | 5 | LOW — competitor team member |
| Changelog Engager | 5 | LOW — power user or evaluator |
| Column | Description |
|---|---|
| person_name | Name or username of the person |
| company | Company/headline from their profile |
| signal_type | Internal signal type code |
| signal_label | Human-readable label |
| competitor | Which competitor this signal is about |
| context | Comment text, case study excerpt, or description |
| url | Link to the source (PH comment, HN post, case study page) |
| profile_url | Link to the person's profile (PH, HN) |
| date | Date of the signal |
| signal_score | Weighted score |
| source | Product Hunt API, Hacker News, Manual |
| engagement | Upvotes/points on the post or comment |
| Source | Cost | Notes |
|---|---|---|
| Product Hunt API | Free | Developer token (may have name redaction) |
| Product Hunt Apify | ~$5-10/run | Fallback if API names redacted |
| Hacker News | Free | Algolia API |
| Manual scraping | Free | Agent scrapes competitor websites |
| Typical run | $0-10 | Free if PH API works; $5-10 if using Apify |
Default: 90 days. Competitor launches and case studies have a longer shelf life than Reddit posts. Someone who commented on a competitor's PH launch 60 days ago is still a viable lead.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.