Skip to content
Skillv1.0.0

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.

by gooseworks-ai(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from gooseworks-ai/goose-skills (skills/lead-generation/capabilities/contact-cache/SKILL.md). Install upstream with npx skills add gooseworks-ai/goose-skills --skill contact-cache. Copyright stays with the author.

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

# 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

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/gooseworks-ai-goose-skills-contact-cache/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

gooseworks-ai-goose-skills-contact-cache.ocm.jsonjson
{
  "ocm": "1",
  "id": "gooseworks-ai-goose-skills-contact-cache",
  "kind": "skill",
  "name": "contact-cache",
  "description": "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.",
  "publisher": "gooseworks-ai",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "data_analysis"
    ],
    "tags": [
      "skill-md",
      "lead-generation",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "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."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/gooseworks-ai/goose-skills",
      "path": "skills/lead-generation/capabilities/contact-cache/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/gooseworks-ai/goose-skills/blob/HEAD/skills/lead-generation/capabilities/contact-cache/SKILL.md",
      "key": "gooseworks-ai/goose-skills/skills/lead-generation/capabilities/contact-cache/SKILL.md"
    }
  },
  "instructions": "# Contact Cache\n\nTrack 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.\n\n## Usage\n\n```bash\n# Check if contacts are already cached\npython3 skills/contact-cache/scripts/cache.py check --linkedin-urls \"https://linkedin.com/in/person1,https://linkedin.com/in/person2\"\npython3 skills/contact-cache/scripts/cache.py check --emails \"john@example.com,jane@example.com\"\n\n# Add a single contact\npython3 skills/contact-cache/scripts/cache.py add --name \"John Smith\" --",
  "cost": {
    "context_tokens": 457
  }
}

Fetch it by URL: GET /api/v1/registry/gooseworks-ai-goose-skills-contact-cache/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.