ics-crm-reminder
# ICS CRM Reminder — Mini-CRM im Kalender
Generates professional ICS calendar files with complete CRM information for B2B customer outreach. Double-click to import into Apple Calendar, Google Calendar, or Outlook.
## When to use this skill
Use this skill whenever a user needs to create a calendar reminder for a customer call, follow-up, or sales meeting. The user provides customer data, and the skill generates a clean ICS file with all CRM details structured in the event description.
## Workflow
### 1. Collect data from the user
Ask the user for the following fields. Not all fields are required — the skill is flexible. Required fields are marked with ⚡.
| Field | Example | Required |
|-------|---------|----------|
| ⚡ Company | Siemens AG | Yes |
| ⚡ Date | 2026-04-15 | Yes |
| ⚡ Time | 10:00 | Yes |
| Contact person | Dr. Müller | No |
| Phone | +49 234 123456 | No |
| Email | mueller@siemens.com | No |
| Topic / Reason | WebAR configurator follow-up | No |
| Priority | high / medium / low | No (Default: medium) |
| Last interaction | 2026-03-10 — Demo presented | No |
| Deal phase | Proposal / Negotiation / Closing / Nurture | No |
| Budget | 25,000 € | No |
| Next step | Follow up on proposal | No |
| Notes | Decision maker on vacation until Apr 12 | No |
| Duration (minutes) | 30 | No (Default: 30) |
| Alarm (minutes before) | 15 | No (Default: 15) |
If the user provides data as freeform text, extract fields intelligently. Only ask when Company, Date, or Time are missing.
### 2. Generate ICS file
Run the script `scripts/generate_ics.py` with the collected data:
```bash
python3 <skill-path>/scripts/generate_ics.py \
--firma "Siemens AG" \
--datum "2026-04-15" \
--uhrzeit "10:00" \
--ansprechpartner "Dr. Müller" \
--telefon "+49 234 123456" \
--email "mueller@siemens.com" \
--thema "WebAR-Konfigurator Folgegespräch" \
--prioritaet "hoch" \
--letzte-interaktion "2026-03-10 — Demo gezeigt" \
--deal-phase "Angebot" \
--budget "25.000 €" \
--naechster-schritt "Angebot nachfassen" \
--notizen "Entscheider im Urlaub bis 12.04." \
--dauer 30 \
--alarm 15 \
--output "<output-path>"
```
### 3. Filename convention
```
YYYY-MM-DD_Company_Reminder.ics
```
Example: `2026-04-15_Siemens-AG_Reminder.ics`
Special characters and spaces in company names are replaced with hyphens.
### 4. CRM description format inside ICS
The DESCRIPTION field is a structured mini-CRM entry:
```
═══ viSales CRM Reminder ═══
📋 KUNDE
Firma: Siemens AG
Ansprechpartner: Dr. Müller
Tel: +49 234 123456
Mail: mueller@siemens.com
🎯 ANLASS
Thema: WebAR-Konfigurator Folgegespräch
Priorität: ⚡ HOCH
📊 DEAL STATUS
Phase: Angebot
Budget: 25.000 €
Letzte Interaktion: 2026-03-10 — Demo gezeigt
➡️ NÄCHSTER SCHRITT
Angebot nachfassen
📝 NOTIZEN
Entscheider im Urlaub bis 12.04.
───
Generated by viSales CRM Reminder
```
### 5. Output
After generating:
1. Save the ICS file to the user's workspace
2. Provide a link to the file
3. Show a brief summary: Company, Date, Topic
Keep the output concise — the user wants the file, not an essay.
## Multiple reminders at once
If the user names multiple customers, create a separate ICS file for each. Show a compact overview of all created files at the end.
## Edge cases
- If no year is given, use the current year (or next year if the date is in the past)
- Natural language like "tomorrow", "next Tuesday", "in 3 days" — calculate the correct date
- Normalize times like "10 Uhr", "10:00", "10h" to HH:MM
- If the user says something vague like "call Siemens about the configurator, sometime mid-April" — suggest a concrete date and ask for confirmation
标签
skill
ai