Search

PythonReactSEOPDF
OpenClaw

lgf

Run B2B lead research with lgf (Lead Gen Factory). Use when asked to find leads, prospect companies, research ICPs, find decision makers, or generate a lead list for any B2B target profile.

catafal0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install catafal/lead-gen-factory

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

lgf — Lead Gen Factory

A CLI pipeline that takes a free-text ICP (Ideal Customer Profile) and returns a scored, deduplicated list of B2B leads as both CSV and structured JSON.

Prerequisites

Install lgf once (requires Python 3.12+):

# From the repo root
pip install -e .

# Or via pipx for isolated install
pipx install git+https://github.com/Catafal/lead-gen-factory.git

Verify installation:

lgf doctor

Required API keys (set in ~/.lgf/.env):

  • TAVILY_API_KEY — web search
  • OPENROUTER_API_KEY — LLM scoring + extraction

Core Command

lgf research --icp-text "<your ICP>" --json 2>/dev/null

The --json flag outputs a structured JSON envelope to stdout — perfect for AI agents to capture and process without touching the filesystem. All human-facing progress output goes to stderr (suppressed with 2>/dev/null).


Usage Patterns

1. Quick inline ICP (most common)
lgf research --icp-text "HR Directors at SaaS companies in Spain, 50-500 employees" --json 2>/dev/null
2. ICP from file (for complex profiles)
lgf research --icp icp_examples/skillia_spain.md --json 2>/dev/null
3. Narrow with a focus constraint
lgf research --icp-text "Tech companies in Madrid" --focus "only companies hiring L&D managers" --json 2>/dev/null
4. Filter by minimum ICP score
lgf research --icp-text "..." --min-score 8 --json 2>/dev/null
5. Dry-run — see search queries only (no crawling, no LLM calls)
lgf research --icp-text "..." --dry-run
6. Check current config
lgf config

JSON Output Schema

When --json is used, the envelope printed to stdout has this structure:

{
  "leads": [
    {
      "business": "Acme Corp",
      "first": "Ana",
      "last": "García",
      "email": "ana.garcia@acme.com",
      "linkedin": "https://linkedin.com/in/anagarcia",
      "website": "https://acme.com",
      "phone": null,...

Source information

Source
github
Repository
openclaw/skills
Path
skills/catafal/lead-gen-factory
Version
—
Commit
8f74ddc41759189791ed325b46b35ce0b16f6ca1
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# lgf — Lead Gen Factory

A CLI pipeline that takes a free-text ICP (Ideal Customer Profile) and returns
a scored, deduplicated list of B2B leads as both CSV and structured JSON.

## Prerequisites

Install lgf once (requires Python 3.12+):

```bash
# From the repo root
pip install -e .

# Or via pipx for isolated install
pipx install git+https://github.com/Catafal/lead-gen-factory.git
```

Verify installation:

```bash
lgf doctor
```

Required API keys (set in `~/.lgf/.env`):
- `TAVILY_API_KEY` — web search
- `OPENROUTER_API_KEY` — LLM scoring + extraction

---

## Core Command

```bash
lgf research --icp-text "<your ICP>" --json 2>/dev/null
```

The `--json` flag outputs a structured JSON envelope to stdout — perfect for
AI agents to capture and process without touching the filesystem.
All human-facing progress output goes to stderr (suppressed with `2>/dev/null`).

---

## Usage Patterns

### 1. Quick inline ICP (most common)

```bash
lgf research --icp-text "HR Directors at SaaS companies in Spain, 50-500 employees" --json 2>/dev/null
```

### 2. ICP from file (for complex profiles)

```bash
lgf research --icp icp_examples/skillia_spain.md --json 2>/dev/null
```

### 3. Narrow with a focus constraint

```bash
lgf research --icp-text "Tech companies in Madrid" --focus "only companies hiring L&D managers" --json 2>/dev/null
```

### 4. Filter by minimum ICP score

```bash
lgf research --icp-text "..." --min-score 8 --json 2>/dev/null
```

### 5. Dry-run — see search queries only (no crawling, no LLM calls)

```bash
lgf research --icp-text "..." --dry-run
```

### 6. Check current config

```bash
lgf config
```

---

## JSON Output Schema

When `--json` is used, the envelope printed to stdout has this structure:

```json
{
  "leads": [
    {
      "business": "Acme Corp",
      "first": "Ana",
      "last": "García",
      "email": "ana.garcia@acme.com",
      "linkedin": "https://linkedin.com/in/anagarcia",
      "website": "https://acme.com",
      "phone": null,...

Related skills

OpenClaw

bambu-studio-ai

heyixuan2

Bambu Lab 3D printer control and automation. Activate when user mentions: printer status, 3D printing, slice, analyze model, generate 3D, AMS filament, print monitor, Bambu Lab, or any 3D printing task. Full pi...

OpenClaw

geo-optimization

capt-marbles

Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...

OpenClaw

0protocol

0isone

Agents can sign plugins, rotate credentials without losing identity, and publicly attest to behavior.