Agent skill
predictleads-signals
Use when a teammate wants ad-hoc PredictLeads signals for a single company, asks "what's happening at [company]", "signals for [domain]", "enrich [domain] with PredictLeads", "pull jobs/funding/news for [company]", or wants to read previously cached signals from local SQLite without burning new credits.
Filed under Prospecting and list building.
From Othmane-Khadri/YALC-the-GTM-operating-system · 61 skills · 290 · pushed 2026-08-20
What it does when it runs
Use when a teammate wants ad-hoc PredictLeads signals for a single company, asks "what's happening at [company]", "signals for [domain]", "enrich [domain] with PredictLeads", "pull jobs/funding/news for [company]", or wants to read previously cached signals from local SQLite without burning new credits.
Read from the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- PREDICTLEADS_API_KEY
- PREDICTLEADS_API_TOKEN
- Hosts it reaches
- hubspot.com
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It does act, so it runs under whatever permissions your session already grants. - Actions present in the files
- shell
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git /tmp/YALC-the-GTM-operating-system git -C /tmp/YALC-the-GTM-operating-system sparse-checkout set ".claude/skills/predictleads-signals" mkdir -p ~/.claude/skills/predictleads-signals cp -R "/tmp/YALC-the-GTM-operating-system/.claude/skills/predictleads-signals/." ~/.claude/skills/predictleads-signals/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
Before you install: this skill will not complete its job on a bare agent. It needs PREDICTLEADS_API_KEY, PREDICTLEADS_API_TOKEN, which you have to obtain separately.
The skill
Source on GitHub ↗Reproduced in full from Othmane-Khadri/YALC-the-GTM-operating-system/blob/5686d1f2f526346133f78eef3349fc5a655757b4/.claude/skills/predictleads-signals/SKILL.md, which is licensed MIT (repository). 397 words, 11 headings.
PredictLeads Signals (single company)
Pulls and reads company-level intent signals from PredictLeads: job openings, financing events, technologies, news events, similar companies. Stored in local SQLite (company_signals table) with a 7-day TTL cache so repeat lookups within the week cost zero credits.
When to use
- Quick lookup before an outbound message: "what's happening at hubspot.com?"
- Adding signal context to a single lead during qualification
- Reading cached signals offline (no API call) via
signals:show - Sanity-checking a company's marketing maturity (tech stack, hiring pace)
Don't use when: enriching a list of >5 companies (use predictleads-lookalikes for discovery, or the bulk signals:enrich --result-set); building a campaign (use prospect-discovery-pipeline).
Quick reference
# Pull all 4 signal types for one company (1 credit per type = 4 credits)
npx tsx src/cli/index.ts signals:fetch --domain hubspot.com
# Restrict to specific types (saves credits)
npx tsx src/cli/index.ts signals:fetch --domain hubspot.com --types jobs,funding
# Force re-fetch even if cached within TTL
npx tsx src/cli/index.ts signals:fetch --domain hubspot.com --no-cache
# Read cached signals locally (no API call, free)
npx tsx src/cli/index.ts signals:show --domain hubspot.com --limit 20
npx tsx src/cli/index.ts signals:show --domain hubspot.com --type news
Cost
| Operation | Credits |
|---|---|
signals:fetch (4 types, default) | 4 |
signals:fetch --types jobs,funding | 2 |
signals:fetch re-run within 7 days | 0 (cache hit) |
signals:show | 0 (local read) |
Live PredictLeads quota: hit /api_subscription once via curl to see remaining credits. Or just run signals:fetch and the output prints cache hit / +N signals per type.
Signal types and aliases
jobs (job_opening), funding (financing), tech (technology), news, similar (similar_company)
Common pitfalls
- Domain format: pass the bare domain (
hubspot.com), nothttps://hubspot.comorwww.hubspot.com. The service tolerates either but URLs in payloads are cleaner. - News and tech rows look empty in
signals:show: payloads usesummary(news) and resolved relationships (tech) instead oftitle. The display already falls through tosummary. If you see blanks, check the raw payload viasqlite3 ~/.gtm-os/gtm-os.db "SELECT payload FROM company_signals WHERE domain='X' LIMIT 1". - Cache invalidation: 7 days is the default TTL. Pass
--no-cacheto force a refresh. Caching is per (domain, signal_type), so refreshing news doesn't re-pull jobs.
Required env
PREDICTLEADS_API_KEY + PREDICTLEADS_API_TOKEN in ~/.gtm-os/.env. Both come from the same PredictLeads subscription page. See TEAM_SETUP.md at repo root for how to get them.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- intent-signals by kenny589 · 64
- signals by octavehq · 11
- community-signals by taizen-ai · 8
- gtm-signals by getbeton · 6
- competitor-signals by Frontal-so · 5
- buying-signals-6 by Frontal-so · 5
- clay-buying-signals-5 by Frontal-so · 5
Need help setting it up?
This page tells you what predictleads-signals does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.