Agent skill · Data & Analytics

signal-scanner

Detect buying signals across TAM companies and watchlist personas. Three-phase architecture: (1) free diff-based signals from existing data (headcount growth, tech stack changes, funding rounds), (2) Apify-powered signals (job postings, LinkedIn content analysis, profile changes), and (3) post-processing with dedup, scoring, and lead status updates. Writes signals to Supabase signals table for downstream activation.

gooseworks-aigithub.com/gooseworks-aiGitHub ↗
claude-codecodexcursorships scriptsMIT
Install
npx skills add gooseworks-ai/goose-skills --skill signal-scanner --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 5
SKILL.md size: 5 KB
Bundled scripts: yes
Path: skills/lead-generation/capabilities/signal-scanner/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 1,091
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Signal Scanner Scheduled scanner that detects buying signals on TAM companies and watchlist personas, writes them to the `signals` table, and sets up downstream activation. ## When to Use - After TAM Builder has populated companies and personas - As a recurring scan (daily/weekly) to detect timing-based outreach triggers - When you need to move from static lists to intent-driven outreach ## Prerequisites - `SUPABASE_URL` + `SUPABASE_SERVICE_ROLE_KEY` in `.env` - `APIFY_TOKEN` in `.env` (for Phase 2 signals) - `ANTHROPIC_API_KEY` in `.env` (optional, for LLM content analysis) - TAM companies populated via `tam-builder` - Watchlist personas created for Tier 1-2 companies ## Signal Types | Priority | Signal | Level | Source | Cost | |----------|--------|-------|--------|------| | P0 | Headcount growth (>10% in 90d) | Company | Data diffs | Free | | P0 | Tech stack changes | Company | Data diffs | Free | | P0 | Funding round | Company | Data diffs | Free | | P0 | Job posting for relevant roles | Company | Apify linkedin-job-search | ~$0.001/job | | P1 | Leadership job change | Person | Apify linkedin-profile-scraper | ~$3/1k | | P1 | LinkedIn content analysis | Person | Apify linkedi

What's inside
Steps it walks through
  1. When to Use
  2. Prerequisites
  3. Signal Types
  4. Config Format
  5. Database Write Policy
  6. Usage
  7. Flags
  8. Output
  9. Signals table writes
  10. Other database writes
  11. Console output
  12. Activation Score
  13. Connects To
  14. File Structure
Ships with 4 files
  • configs/example.json
  • configs/toma-bdc-signal.json
  • scripts/signal_scanner.py
  • skill.meta.json
Commands it runs
Dry run first (ALWAYS DO THIS) — detect signals without writing to DB
python skills/capabilities/signal-scanner/scripts/signal_scanner.py \
Full scan (only after user reviews dry-run results and approves)
Test mode (5 companies max)
Free signals only (skip Apify)
Set all Apify signals to enabled: false in config
More from goose-skills
All skills →
About this skill
What does the signal-scanner skill do?

Detect buying signals across TAM companies and watchlist personas. Three-phase architecture: (1) free diff-based signals from existing data (headcount growth, tech stack changes, funding rounds), (2) Apify-powered signals (job postings, LinkedIn content analysis, profile changes), and (3) post-processing with dedup, scoring, and lead status updates. Writes signals to Supabase signals table for downstream activation.

How do I install it?

Run `npx skills add gooseworks-ai/goose-skills --skill signal-scanner --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From gooseworks-ai/goose-skills, a repository with 1,091 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going