A contacts database gives Claude Code context about the people you interact with. Commands use this to:
- Recognise email senders and suggest appropriate responses
- Identify meeting attendees and their roles
- File emails to correct vendor folders
- Draft communications with proper context
Store contacts in your vault or project:
vault/03-Resources/contacts.yaml # Personal vault
docs/references/contacts.yaml # Project-specific
YAML format with structured fields:
contacts:
- name: Jane Smith
organization: Acme Corp
role: Project Manager
email: jane.smith@acme.com
phone: 0400 123 456
notes: |
Primary contact for Website Redesign project
Prefers email over phone
tags:
- client
- acme
- primary-contact
first_contact: 2024-01-15
last_contact: 2024-03-20See examples/templates/contacts.yaml for a complete template.
| Field | Purpose |
|---|---|
name |
Full name for recognition |
email |
Match against email senders |
organization |
Group contacts, suggest filing |
| Field | Purpose |
|---|---|
role |
Context for drafting responses |
phone |
Reference when calling |
notes |
History, preferences, context |
tags |
Filtering and categorisation |
first_contact |
Track relationship timeline |
last_contact |
Know when you last interacted |
When processing inbox:
- Matches sender email against contacts database
- Uses
organizationto suggest vendor folder - Uses
tagsto identify priority contacts - References
notesfor context on relationship
Example: Email from jane.smith@acme.com → recognised as client → suggests Vendors/Acme/ folder
When processing transcripts:
- Matches attendee names against contacts
- Pulls role and organisation for meeting notes
- Flags unknown attendees for adding to database
- Updates
last_contactdate
Example: Meeting with "Jane Smith" → pulls "Project Manager, Acme Corp" into notes
When drafting responses:
- Looks up sender in contacts
- Uses
notesfor relationship context - Adjusts tone based on
tags(client vs vendor vs colleague) - References recent interactions from
last_contact
/meeting-process
The command detects new attendees and prompts to add them.
Add to your weekly review:
- Update
last_contactdates - Add notes from recent conversations
- Remove outdated contacts
The meeting-process command can:
- Add new contacts automatically
- Update roles if they've changed
- Flag contacts not seen in 6+ months
Consistent tags enable filtering:
By relationship:
client,vendor,recruitment,network,colleague
By priority:
primary-contact,escalation,decision-maker
By domain:
technical,finance,legal,sales
By status:
active,dormant,former
- Store contacts locally (not in cloud-synced folders if sensitive)
- Don't include passwords or credentials
- Be mindful of GDPR/privacy if storing customer data
- Use for professional contacts, not personal relationships
For simpler needs, use markdown tables:
# Project Contacts
| Name | Organisation | Role | Email | Notes |
|------|--------------|------|-------|-------|
| Jane Smith | Acme Corp | PM | jane@acme.com | Primary contact |
| Bob Johnson | Acme Corp | Tech Lead | bob@acme.com | Integration questions |YAML is preferred for:
- Richer metadata (dates, tags, notes)
- Easier parsing by commands
- Structured updates
Markdown works for:
- Quick reference
- Sharing with others
- Simpler projects