Skill: kopfkinok3/ics-crm-reminder (version 1.0.0)

--- name: ics-crm-reminder description: "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." version: 1.0.0 metadata: openclaw: requires: bins: - python3 emoji: "📅" homepage: "https://github.com/visales/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 | [REDACTED_SECRET] | 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 "[REDACTED_SECRET]" \ --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: [REDACTED_SECRET] 🎯 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


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)