contact-cache
Contact Cache maintains a deduplicated CSV database of people contacted across outreach strategies, using LinkedIn URLs or emails as unique identifiers. Use this skill to prevent duplicate outreach when running recurring campaigns, track contact status from initial qualification through conversion, and export reporting data filtered by strategy or engagement stage.
git clone --depth 1 https://github.com/gooseworks-ai/goose-skills /tmp/contact-cache && cp -r /tmp/contact-cache/skills/lead-generation/capabilities/contact-cache ~/.claude/skills/contact-cacheSKILL.md
# Contact Cache Track all identified/contacted people across strategies. CSV-backed contact database with dedup by LinkedIn URL or email. Prevents duplicate outreach when running strategies on a recurring cadence. ## Usage ```bash # Check if contacts are already cached python3 skills/contact-cache/scripts/cache.py check --linkedin-urls "https://linkedin.com/in/person1,https://linkedin.com/in/person2" python3 skills/contact-cache/scripts/cache.py check --emails "john@example.com,jane@example.com" # Add a single contact python3 skills/contact-cache/scripts/cache.py add --name "John Smith" --linkedin-url "https://linkedin.com/in/johnsmith" --email "john@example.com" --company "Acme Corp" --title "VP Finance" --strategy "2A-hiring-signal" # Bulk import from CSV python3 skills/contact-cache/scripts/cache.py add --csv /path/to/leads.csv --strategy "2A-hiring-signal" # Update a contact's status python3 skills/contact-cache/scripts/cache.py update --linkedin-url "https://linkedin.com/in/johnsmith" --status contacted --notes "Sent intro email 2026-02-24" # Export the full cache python3 skills/contact-cache/scripts/cache.py export --format csv python3 skills/contact-cache/scripts/cache.py export --format json python3 skills/contact-cache/scripts/cache.py export --status contacted python3 skills/contact-cache/scripts/cache.py export --strategy "2A-hiring-signal" # Print summary statistics python3 skills/contact-cache/scripts/cache.py stats ``` ## Data Contacts are stored in `skills/contact-cache/data/contacts.csv`. The file is auto-created on first use. Dedup is by LinkedIn URL (preferred) or email. Both are normalized and hashed (SHA256, first 16 chars) to produce a stable `contact_id`. ## Valid Statuses `new`, `qualified`, `contacted`, `replied`, `meeting_booked`, `converted`, `not_interested`
>
>
For paid lead-gen and participant-recruitment ads, replaces vanity CPA with true CAC per qualified lead by joining ad-platform data with downstream funnel events, surfaces tracking gaps, and classifies every creative into Scale / Keep / Investigate / Cut.
>
>
AI video conversations - create real-time video calls with AI personas
AI-powered web scraping - extract data using natural language prompts
Search Amazon products - find items, compare prices, read reviews