Systems Lab

Agent skill

gtm-hiring-signal-scan

Scan a list of target accounts for hiring signals that predict a purchase.

activeReaches the webInstructions only508 words

Filed under Prospecting and list building and Team and enablement.

From loootai/gtm-skills · 15 skill entries · 0 · pushed 2026-10-08

What it does when it runs

Scan a list of target accounts for hiring signals that predict a purchase. Use when the user says "which of these companies are hiring SDRs", "find accounts hiring for RevOps", "hiring signals for my account list", "who is building a data team" or "companies posting jobs that mention Salesforce". Searches open roles per account through looot, from $0.0005 per account.

Automated analysis of 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
None found.
Hosts it reaches
  • api.looot.ai
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about gtm-hiring-signal-scan

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/loootai/gtm-skills.git /tmp/gtm-skills
git -C /tmp/gtm-skills sparse-checkout set "skills/gtm-hiring-signal-scan"
mkdir -p ~/.claude/skills/gtm-hiring-signal-scan
cp -R "/tmp/gtm-skills/skills/gtm-hiring-signal-scan/." ~/.claude/skills/gtm-hiring-signal-scan/

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.

Reproduced in full from loootai/gtm-skills/blob/1cb22eede6829b8f9fa87a78e6957a97e4032bd5/skills/gtm-hiring-signal-scan/SKILL.md, which is licensed MIT (repository). 508 words, 8 headings.

Hiring signal scan

A company hiring three SDRs needs sales tools; a company hiring its first data engineer needs data tools. This skill searches open job postings for each account, keeps the roles that match the user's buying signals, and ranks accounts by signal strength.

Needs looot connected (MCP server https://api.looot.ai/mcp, or the looot skill from npx skills add loootai/looot-skills). Searching and inspecting are free; runs are paid from the prepaid balance.

Ask for these inputs

  • The accounts: domains or company names (a list or a CSV).
  • The signal: role titles (SDR, RevOps, Data Engineer) and/or words in the job text (Salesforce, HubSpot, Snowflake).
  • How fresh: postings from the last 30 days by default.

Steps and prices

Prices are the cheapest live provider in the public looot catalog on 2026-10-08. inspect shows the live price.

#Job idInputPrice on 2026-10-08
1jobs.searchcompany name plus role words as the queryfrom $0.0005 per call or $0.000145 per result
1 (alt)jobs.companythe company (domain or LinkedIn URL)from $0.01 per call
2 (optional)web.scrape.markdownurl of a matching posting, to read the full textfrom $0.0002 per call

signals.hiring (from $0.108 per call) returns a ready-made hiring signal feed. Use it only when the user asks for a market-wide feed, not to check their own list.

Expected total for 100 accounts: about $0.05 to $0.10 with jobs.search, about $1 with jobs.company.

Quote before you run

  1. Accounts × the price of the job you picked, plus step 2 for up to 3 postings per matching account.
  2. Tell the user the total and the balance; wait for a yes. More than 100 runs: an explicit yes.
  3. Cap each run with fallback.maxCostUsd (0.02).

Run it

Inspect jobs.search once: providers differ on whether they take a free query, a company field or a location. jobInputs in a search_catalog answer lists what each one takes.

run {"endpointId": "job:jobs.search", "input": {"query": "Acme SDR", "company": "Acme"}, "idempotencyKey": "hire-<list>-acme.com", "fallback": {"maxAttempts": 3, "maxCostUsd": 0.02}}

Keep a posting only when the employer name matches the account (job boards mix in agencies and similarly named companies) and the title or text matches the signal. Score each account: 3 points per matching role posted in the window, +2 when the role is a first hire for that function ("first", "founding", "build the team"), +1 when the text names one of the signal tools.

Output format

domain,company,score,matching_roles,newest_posting,example_title,example_url,signal_note
acme.com,Acme,8,2,2026-10-01,Senior SDR,https://...,"2 SDR roles in 30 days, text names HubSpot"

Then the accounts with no matching role, and the total actualCost.

Cost and stop rules

  • One search per account; do not page further unless the user asks.
  • Two failures on the same account: mark it error, move on.
  • Report actualCost at the end.

When not to use this skill

  • One company's open roles in full: looot-job-postings in loootai/looot-skills.

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.

Need help setting it up?

This page tells you what gtm-hiring-signal-scan 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.