Customer follow-up reminder CLI. Log contacts, get smart suggestions. Never miss a follow-up again.
followup is a lightweight command-line tool for freelancers and solopreneurs who manage multiple client relationships. It logs every customer contact, tracks deal stages, and intelligently suggests who needs a follow-up — before you lose the deal.
CRMs are heavyweight SaaS platforms with monthly fees. followup runs locally, stores data in SQLite, and focuses on one thing: reminding you to follow up.
- Log contacts (email, call, meeting, other) with notes
- Track deal stages:
lead→proposal→negotiation→active→closed - Smart follow-up suggestions based on customizable rules
- Contact reports (weekly, monthly, yearly)
- Zero external dependencies beyond Python stdlib + click + rich
- All data stored locally in
~/.followup/followup.db
pip install followup-cligit clone https://github.com/izag8216/followup.git
cd followup
pip install -e .pipx install followup-cli# Add a person you're dealing with
followup people add "Alice Chen" --company "Acme Corp" --stage proposal --priority 5
# Log a contact
followup log "Alice Chen" --type email --note "Sent proposal v2"
# Log another contact a few days later
followup log "Alice Chen" --type call --note "Discussed timeline"
# Who needs follow-up?
followup suggest --top 5
# This week's activity
followup report --this-week
# Customize reminder rules
followup rule add --stage proposal --max-days 5followup people list # List all people
followup people add <name> --stage <stage> # Add a person
followup people edit <id|name> --priority 5 # Update a person
followup people delete <id|name> # Remove a person
followup log <id|name> --type email --note "..." # Log a contact
followup history # View all history
followup history "Alice Chen" # View one person's history
followup suggest # Top 5 suggestions
followup suggest --top 10 # Top 10 suggestions
followup rule list # List all rules
followup rule add --stage proposal --max-days 5 # Set rule
followup rule delete --stage lead # Remove rule
followup report --this-week # This week's contacts
followup report --this-month # This month's contacts
followup report --year 2026 # Yearly summary
followup calculates urgency based on:
- Last contact date — how long since you last reached out
- Stage rules — customizable max-days per stage (e.g., proposal = 7 days)
- Priority — importance of the contact (1-5)
Default rules:
| Stage | Max Days |
|---|---|
| lead | 14 |
| proposal | 7 |
| negotiation | 3 |
| active | 30 |
| closed | 365 |
Add to crontab for daily morning suggestions:
0 9 * * * /usr/local/bin/followup suggest --top 5- Python 3.10+ — core language
- click — CLI framework
- rich — terminal output formatting
- SQLite — local data storage
See CONTRIBUTING.md for development setup and guidelines.
MIT — see LICENSE for details.
Generated by yusaku-skill.