Contact CRM
This skill provides a complete contact-product-organization management system using CSV files with relational linking via UUIDs. Three normalized entities with auto-export to PDF and XLSX.
Data model
Organization ──1:N──→ Contact ──N:N──→ Product
- Organization: company or entity with address, industry, tax info
- Contact: person linked to one organization
- Product: catalog item referenced by contacts via
product_ids
When to install dependencies
If you only need the CSV schema or pattern, no installation needed. If you need validation, CRUD operations, or export, install dependencies:
pip install -r requirements.txt
Scripts auto-detect missing dependencies and install them on first run.
How to use this skill
- Scaffold:
python scripts/scaffold.py— generates empty CSVs with correct headers - Organizations:
python scripts/organizations.py add|list|search|update - Contacts:
python scripts/contacts.py add|list|search|update - Products:
python scripts/products.py add|list|search|update - Validate:
python scripts/validate.py— checks phone numbers + cross-CSV references - Export:
python scripts/export.py— generates PDF and XLSX
All CRUD operations auto-trigger export after every save.
Quick reference
# Scaffold empty CSVs
python scripts/scaffold.py
# Create an organization
python scripts/organizations.py add
# Create a contact (note the org UUID from previous step)
python scripts/contacts.py add
# Create a product (note the product UUID)
python scripts/products.py add
# Link product to contact via update
python scripts/contacts.py update <contact-num>
# Validate everything
python scripts/validate.py
# Export to PDF + XLSX
python scripts/export.py
References
references/schema.md— Full schema for all three CSVsreferences/linking.md— UUID-based cross-CSV linking, consistency rulesreferences/validation.md— Phone validation, fuzzy duplicate detectionreferences/export.md— PDF and XLSX output specifications