ICS CRM Reminder

Data & APIs

Generates ICS calendar files with structured CRM data for B2B sales follow-ups. Creates importable .ics reminders with customer details, deal status, priority, and next steps — works with Apple Calendar, Google Calendar, and Outlook.

Install

openclaw skills install 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 ⚡.

FieldExampleRequired
⚡ CompanySiemens AGYes
⚡ Date2026-04-15Yes
⚡ Time10:00Yes
Contact personDr. MüllerNo
Phone+49 234 123456No
Emailmueller@siemens.comNo
Topic / ReasonWebAR configurator follow-upNo
Priorityhigh / medium / lowNo (Default: medium)
Last interaction2026-03-10 — Demo presentedNo
Deal phaseProposal / Negotiation / Closing / NurtureNo
Budget25,000 €No
Next stepFollow up on proposalNo
NotesDecision maker on vacation until Apr 12No
Duration (minutes)30No (Default: 30)
Alarm (minutes before)15No (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:

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