CRM & Lead Manager

A business automation skill that manages customer relationships and sales pipelines. Track leads from initial contact to close, schedule automated follow-ups, segment contacts by status, and generate activity reports. Uses local JSON storage by default - no external APIs required.

84Trust Medium
by hermeshub-businessproductivityintermediatev1.0.0updated Mar 14, 2026
5.6kTotal Runs
92.7%Success Rate
1.8kInstalls
84Trust Score

Tags

#crm#leads#sales#contacts#pipeline#business#automation#real-estate

Required Tools

bashfile_readfile_write

Inputs

NameTypeDescriptionReq
actiontextAction: "add_lead", "update_status", "get_pipeline", "schedule_followup", "get_report"yes
lead_datajsonLead information: {name, email, phone, source, status, notes, priority}--
lead_idtextLead identifier for updates/lookups--
pipeline_stagetextPipeline stage: new, contacted, qualified, proposal, negotiation, closed--

Outputs

NameTypeDescriptionReq
resultjsonCRM operation result with lead data, pipeline status, or reportyes

Compatible Skills

SKILL.md

---
name: crm-lead-manager
description: Manage customer relationships, track leads through pipelines, schedule follow-ups, and automate outreach.
---

# CRM & Lead Manager

Track leads, manage pipelines, and automate customer relationships.

## Quick Start

### Add New Lead

```bash
# Store lead in local JSON
cat > ~/.crm/leads.json << 'EOF'
{
  "lead_id": "lead_001",
  "name": "John Smith",
  "email": "john@example.com",
  "phone": "+1234567890",
  "source": "website",
  "status": "new",
  "priority": "high",
  "notes": "Interested in 3BR apartment",
  "created_at": "2026-03-14",
  "last_contact": "2026-03-14"
}
EOF
```

### Update Pipeline Status

```bash
# Update lead status
jq '.status = "qualified"' ~/.crm/leads.json > ~/.crm/leads_tmp.json && mv ~/.crm/leads_tmp.json ~/.crm/leads.json
```

### View Pipeline

```bash
# Get all leads by status
jq '.[] | select(.status == "qualified")' ~/.crm/leads.json
```

### Schedule Follow-up

```bash
# Add follow-up to lead
cat > ~/.crm/followups.json << 'EOF'
{
  "lead_id": "lead_001",
  "followup_date": "2026-03-20",
  "method": "email",
  "notes": "Send property listings"
}
EOF
```

## Pipeline Stages

| Stage | Description |
|-------|-------------|
| new | Initial contact |
| contacted | First outreach sent |
| qualified | Interest confirmed |
| proposal | Quote sent |
| negotiation | Terms discussed |
| closed | Deal won |
| lost | Deal lost |

## Workflow: Real Estate Agent

1. **Lead Capture**: Website inquiry → Add lead
2. **Auto-Response**: Send welcome email via resend-cli
3. **Property Tour**: Schedule via gogcli calendar
4. **Follow-up Sequence**: Daily reminders via slack-notifier
5. **Contract**: Mark as closed, archive

## Data Structure

```json
{
  "lead_id": "lead_001",
  "name": "John Smith",
  "email": "john@example.com",
  "phone": "+1234567890",
  "source": "website",
  "status": "qualified",
  "priority": "high",
  "assigned_to": "agent_1",
  "created_at": "2026-03-14",
  "last_contact": "2026-03-14",
  "notes": "Budget: $500k-700k"
}
```

## Storage

- Leads: ~/.crm/leads.json
- Follow-ups: ~/.crm/followups.json
- Activities: ~/.crm/activities.json

No external APIs required - all local storage!