--- title: Clienttarget emoji: πŸ€– colorFrom: blue colorTo: indigo sdk: docker app_port: 7860 pinned: false --- # πŸ€– AI Client Acquisition System > Enterprise-grade, hyper-intelligent lead discovery, profiling, and scoring pipeline. > Built with production AI engineering practices β€” not n8n-style hype. [![Phase](https://img.shields.io/badge/Phase-1%20Finding-blue)]() [![Models](https://img.shields.io/badge/AI-MiniMax%20M2.7%20%2B%20LLaMA-green)]() [![Cost](https://img.shields.io/badge/LLM%20Cost-%240%2Fday-brightgreen)]() [![Trigger.dev](https://img.shields.io/badge/Orchestration-Trigger.dev-purple)]() --- ## What This System Does Automatically discovers, qualifies, and profiles potential clients for an AI automation agency. ``` Every day at 9 AM PKT: 1. Pick next territory (city Γ— industry) β†’ 27 cities, auto-rotation 2. Search Google for companies β†’ Serper API 3. Scrape each website β†’ Playwright (headless) 4. Detect pain signals β†’ "no chatbot", "phone booking only", etc. 5. Gate 2: Skip if < 2 pain signals 6. Find decision-maker emails β†’ Hunter.io + Pattern Generation + SMTP 7. Verify emails β†’ 7-layer verification (FREE) 8. Find personal LinkedIn + social profiles 9. AI profiling β†’ MiniMax M2.7 (chain-of-thought reasoning) 10. Deterministic scoring β†’ 100-point scale, zero hallucination 11. Alert on Slack β†’ hot leads (85+) instant, daily digest for all ``` ## Architecture ``` β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ CRON: daily-lead-discovery (4 AM UTC = 9 AM PKT) β”‚ β”‚ β†’ Territory Manager β†’ Google Search β†’ Queue β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β–Ό (max 3 concurrent) β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ TASK: process-company β”‚ β”‚ β†’ Scrape β†’ Pain Signals β†’ Gate 2 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ TASK: enrich-and-profile β”‚ β”‚ β†’ Hunter β†’ Pattern Gen β†’ SMTP β†’ LinkedIn β”‚ β”‚ β†’ Python AI Service β†’ Save β†’ Slack Alert β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ``` ## Model Chain (All FREE on NVIDIA NIM) | Priority | Model | Parameters | Use Case | |----------|-------|-----------|----------| | 1st | MiniMax M2.7 | ~100B+ | Profiling, scoring, complex reasoning | | 2nd | LLaMA 3.3 70B | 70B | Reliable fallback | | 3rd | LLaMA 3.1 8B | 8B | Email classification, simple tasks | | 4th | Deterministic | β€” | Zero hallucination fallback | **Single API key. Single endpoint. $0/day.** ## Scoring System (100 points, fully deterministic) ``` Company Fit: 25 pts (industry + size match) AI Readiness: 20 pts (tech stack + AI jobs) Service Match: 20 pts (pain signals β†’ our services) Decision Maker: 20 pts (verified email + LinkedIn + authority) Timing: 15 pts (growth signals + active website) Tiers: hot (85+) | warm (70-84) | nurture (50-69) | archive (<50) ``` ## Tech Stack | Layer | Technology | Purpose | |-------|-----------|---------| | Orchestration | Trigger.dev | CRON, task chaining, retry, queuing | | Database | Supabase (PostgreSQL) | Data storage, config, state | | LLM | NVIDIA NIM (MiniMax + LLaMA) | AI profiling & analysis | | Web Scraping | Playwright | Headless browser | | Email | Hunter.io + SMTP | Finding & verification | | Notifications | Slack Bot | Alerts, commands, digest | | AI Service | Python FastAPI | Profiling, scoring, hallucination guard | | Language | TypeScript + Python | Core logic | ## Project Structure ``` src/ β”œβ”€β”€ discovery/ # Phase 1: Finding pipeline β”‚ β”œβ”€β”€ lib/ # Core logic β”‚ β”‚ β”œβ”€β”€ contact-enricher.ts # 6-step email pipeline β”‚ β”‚ β”œβ”€β”€ email-classifier.ts # Tier 1/2/3 classification β”‚ β”‚ β”œβ”€β”€ email-verifier.ts # 7-layer verification β”‚ β”‚ β”œβ”€β”€ email-pattern-generator.ts # FREE Snov replacement β”‚ β”‚ β”œβ”€β”€ linkedin-person-finder.ts # Personal LinkedIn β”‚ β”‚ β”œβ”€β”€ social-finder.ts # Instagram, Facebook, Twitter β”‚ β”‚ β”œβ”€β”€ pain-signal-detector.ts # Heuristic + LLM β”‚ β”‚ β”œβ”€β”€ territory-manager.ts # CityΓ—industry grid β”‚ β”‚ └── web-scraper.ts # Playwright scraper β”‚ β”œβ”€β”€ providers/ # External APIs β”‚ β”‚ β”œβ”€β”€ hunter.ts # Hunter.io integration β”‚ β”‚ β”œβ”€β”€ serper.ts # Google search β”‚ β”‚ └── reoon.ts # Email verification β”‚ └── trigger-tasks/ # Trigger.dev tasks β”‚ β”œβ”€β”€ auto-discovery.ts # 5 chained tasks β”‚ └── manual-discovery.ts # Slack-triggered runs β”œβ”€β”€ profiling/ # AI profiling service β”‚ └── python-service/ # FastAPI β”‚ β”œβ”€β”€ main.py # /profile endpoint β”‚ β”œβ”€β”€ profiler.py # Chain-of-thought profiling β”‚ β”œβ”€β”€ scorer.py # Signal extraction + deterministic math β”‚ β”œβ”€β”€ hallucination_guard.py # Evidence-based cross-check β”‚ β”œβ”€β”€ nvidia_client.py # Multi-model LLM client β”‚ └── config.py # Settings β”œβ”€β”€ shared/ # Shared utilities β”‚ β”œβ”€β”€ config/env.ts # Environment validation (Zod) β”‚ β”œβ”€β”€ llm/nvidia-client.ts # Multi-model LLM (MiniMax primary) β”‚ β”œβ”€β”€ llm/prompts.ts # Production prompts β”‚ β”œβ”€β”€ llm/grounding.ts # Evidence-based verification β”‚ β”œβ”€β”€ observability/tracer.ts # Trace IDs + token tracking β”‚ β”œβ”€β”€ pipeline/checkpoint.ts # Crash recovery β”‚ β”œβ”€β”€ supabase/client.ts # DB client β”‚ └── utils/ # Retry, rate limiter, logger └── slack/ # Slack integration β”œβ”€β”€ slack-service.ts # 3-layer delivery └── slack-commands.ts # /discover, /leads, /status, etc. ``` ## Quick Start See [Setup Guide](docs/setup-guide.md) for detailed instructions. ```bash # 1. Clone git clone https://github.com/iDevBuddy/ai-client-acquisition.git cd ai-client-acquisition # 2. Install npm install cd src/profiling/python-service && pip install -r requirements.txt && cd ../../.. # 3. Configure cp .env.example .env # Fill in your API keys (see docs/setup-guide.md) # 4. Database # Run supabase/migrations/*.sql on your Supabase project # 5. Run npm run trigger:dev # Start Trigger.dev (task orchestration) cd src/profiling/python-service && python main.py # Start AI service ``` ## API Keys Required | Service | Cost | What It Does | |---------|------|-------------| | NVIDIA NIM | FREE | AI models (MiniMax + LLaMA) | | Serper.dev | FREE (2500/mo) | Google search | | Hunter.io | FREE (25/mo) | Email finding | | Reoon | FREE (20/day) | Email verification | | Supabase | FREE | Database | | Slack | FREE | Notifications | | Trigger.dev | FREE (50K runs/mo) | Job orchestration | **Total cost: $0/month** ## Contributing See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines. ## License Private β€” All rights reserved.