← 返回 Skills 市场
catafal

lfg

作者 Jordi Catafal · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
319
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install lead-gen-factory
功能描述
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...
使用说明 (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+):

# 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 "\x3Cyour 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": "[email protected]",
      "linkedin": "https://linkedin.com/in/anagarcia",
      "website": "https://acme.com",
      "phone": null,
      "date": "2026-03-09",
      "place_of_work": "Acme Corp, Madrid",
      "icp_fit_score": 9,
      "icp_fit_reason": "HR Director at 120-person SaaS, exact ICP match",
      "source_url": "https://acme.com/team"
    }
  ],
  "count": 1,
  "output_file": "leads_20260309.csv",
  "icp": {
    "target_roles": ["HR Director", "People Director"],
    "company_size_min": 50,
    "company_size_max": 500,
    "industries": ["SaaS", "Tech"],
    "geographies": ["Spain"],
    "min_fit_score": 7
  }
}

Useful jq extractions

# All emails
lgf research --icp-text "..." --json 2>/dev/null | jq '.leads[].email'

# Count of leads found
lgf research --icp-text "..." --json 2>/dev/null | jq '.count'

# First lead's company + score
lgf research --icp-text "..." --json 2>/dev/null | jq '.leads[0] | {business, icp_fit_score}'

# Filter leads scoring 9+
lgf research --icp-text "..." --json 2>/dev/null | jq '[.leads[] | select(.icp_fit_score >= 9)]'

# LinkedIn URLs only
lgf research --icp-text "..." --json 2>/dev/null | jq '[.leads[].linkedin | select(. != null)]'

Writing a Good ICP

Include:

  • Roles: job titles of your decision makers (e.g. "HR Director", "L&D Manager", "CPO")
  • Company size: employee range (e.g. "50-500 employees")
  • Industries: sectors (e.g. "SaaS", "fintech", "consulting")
  • Geography: countries or cities (e.g. "Spain", "Barcelona", "LATAM")
  • Signals (optional): growth stage, tech stack, hiring activity

Example ICP text:

HR Directors and People Ops leads at B2B SaaS companies in Spain with 50-500 employees.
Focus on companies with active hiring in engineering or sales. Avoid BPO and consulting firms.

All Available Commands

Command Purpose
lgf research Full pipeline: search → crawl → extract → score → CSV
lgf validate-icp Parse and display an ICP without running the pipeline
lgf config Show effective configuration (API keys masked)
lgf config set KEY VALUE Update a setting in ~/.lgf/.env
lgf profile list List saved ICP profiles
lgf profile add \x3Cname> Save current ICP as a named profile
lgf doctor Health check: API keys + live connectivity
lgf init First-time setup wizard

Score Interpretation

Score Meaning
8–10 Strong ICP fit — prioritize these
6–7 Moderate fit — worth reviewing
\x3C 6 Weak fit — pipeline default filter

Default min score is 7. Override with --min-score.

安全使用建议
Before installing or enabling this skill, consider the following: - Inconsistency: SKILL.md requires a local 'lgf' CLI and two API keys (TAVILY_API_KEY, OPENROUTER_API_KEY), but the registry metadata does not list those requirements. Treat this as a warning sign. - Verify the source: inspect the GitHub repository (https://github.com/Catafal/lead-gen-factory.git) yourself. Review the code (especially install/setup scripts) and check issues/stars/maintainer reputation before pip-installing. - Avoid installing system-wide: if you decide to install, do so in an isolated environment (VM, container, or dedicated user account) or use pipx with isolation, and avoid providing high‑privilege credentials. - Use least-privilege credentials: create dedicated API keys with limited scope and rotate them if used for testing. Do not reuse sensitive production keys. - Protect secrets on disk: SKILL.md points at ~/.lgf/.env — ensure its permissions are restrictive and be aware that the agent (with Read permission) could access that file. - Confirm registry metadata: ask the publisher to update the skill manifest to declare required binaries and env vars formally, and to provide an install spec referencing a vetted release (e.g., GitHub release tarball or PyPI package) rather than a raw git URL if possible. If you cannot review the repository or prefer lower risk, do not install the CLI and instead look for a skill that either provides a vetted install spec or is purely instruction-only without requiring new system binaries or undeclared credentials.
功能分析
Type: OpenClaw Skill Name: lead-gen-factory Version: 1.0.0 The skill requires broad permissions (Bash, Read, Write) and instructs the agent to install software directly from a remote GitHub repository (github.com/Catafal/lead-gen-factory.git), which presents a supply chain risk. It also manages sensitive API keys (TAVILY_API_KEY, OPENROUTER_API_KEY) in a local configuration file (~/.lgf/.env) and uses shell redirection (2>/dev/null) to suppress stderr. While these behaviors are plausibly necessary for a CLI-based lead generation tool, they represent significant attack surfaces and risky capabilities without a centralized vetting process.
能力评估
Purpose & Capability
The skill claims to run B2B lead research but the package metadata lists no required binaries or env vars while SKILL.md clearly expects a local 'lgf' CLI and two API keys (TAVILY_API_KEY and OPENROUTER_API_KEY). The registry entry also gives the skill name as 'lfg' while SKILL.md uses 'lgf' (likely a typo). Asking for an external CLI and API keys is coherent with lead-gen functionality, but the registry should have declared these requirements; their absence is an inconsistency.
Instruction Scope
SKILL.md instructs the agent/user to install a third‑party Python CLI and to store API keys in ~/.lgf/.env, and suggests running CLI commands that crawl and extract contact data. The instructions allow reading ICP files and writing CSV/JSON. There are no explicit instructions to exfiltrate secrets, but the skill enables the agent to read local config (~/.lgf/.env) and run networked searches/LLM scoring; because the declared metadata omitted these data/credential needs, the instruction scope is broader than what the registry signals.
Install Mechanism
The skill package has no install spec, but SKILL.md recommends installing the CLI from a GitHub repo (pip install -e . or pipx install git+https://github.com/Catafal/lead-gen-factory.git). Installing from a third‑party GitHub URL executes and places external code on the system and can run arbitrary code—this is higher risk, especially when the registry did not declare the dependency or provide a vetted install spec.
Credentials
SKILL.md requires two sensitive API keys (TAVILY_API_KEY for web search and OPENROUTER_API_KEY for LLM calls) stored in ~/.lgf/.env, but the skill metadata lists no required env vars. These credentials are relevant to lead generation, so they are proportionate to the task, but their absence from the registry is a red flag: an agent or user may not realize sensitive keys will be needed and potentially read/written by the skill.
Persistence & Privilege
The skill is not marked 'always' and does not request system-wide persistent privileges. Autonomous invocation is allowed (the default) — combined with the above issues (undeclared credentials and external install), this increases blast radius if the agent is permitted to run Bash/Read/Write. There is no evidence the skill attempts to modify other skills or global agent config.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install lead-gen-factory
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /lead-gen-factory 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Init
元数据
Slug lead-gen-factory
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

lfg 是什么?

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... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 319 次。

如何安装 lfg?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install lead-gen-factory」即可一键安装,无需额外配置。

lfg 是免费的吗?

是的,lfg 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

lfg 支持哪些平台?

lfg 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 lfg?

由 Jordi Catafal(@catafal)开发并维护,当前版本 v1.0.0。

💬 留言讨论