{
  "slug": "text-to-reminders",
  "name": "gizza-ai/text-to-reminders",
  "version": "0.1.0",
  "title": "Text to Reminders — Turn Notes Into an ICS Task List — gizza.ai",
  "description": "Turn free-form notes into an importable .ics reminders file with due dates, priorities and optional alarms — private, deterministic and in-browser.",
  "tags": [
    "text to reminders",
    "notes to tasks",
    "natural language reminders",
    "ics reminders",
    "calendar tasks",
    "task extractor",
    "reminder parser",
    "todo to ics"
  ],
  "category": "text",
  "urls": {
    "page": "https://gizza.ai/tools/text-to-reminders/",
    "markdown": "https://gizza.ai/tools/text-to-reminders/index.md",
    "descriptor": "https://gizza.ai/tools/text-to-reminders/tool.json",
    "deep_link_example": "https://gizza.ai/tools/text-to-reminders/?text=Call%20the%20dentist%20tomorrow%20at%203pm%0AUrgent%3A%20submit%20expense%20report%20Friday%0ABuy%20milk&reference_date=2026-03-02&detect_priority=true&include_undated=true&alarm_minutes=0"
  },
  "cli": "gizza tool text-to-reminders \"Call the dentist tomorrow at 3pm\nUrgent: submit expense report Friday\nBuy milk\"",
  "tool": {
    "description": "Turn a free-form brain-dump into a ready-to-import iCalendar (.ics) file of reminders, one task per line. Natural-language due dates and times are parsed deterministically and stripped from each title — today, tonight, tomorrow, weekday names, next week/month, 'in 3 days', ISO dates, M/D, 'March 5, 2027', and clock times like 'at 3pm', '09:30', noon. Dates are anchored on an optional reference_date. Priority keywords map to the iCalendar PRIORITY field, undated lines can be kept as tasks with no due, and an optional alarm attaches a display reminder before each due. Pure and private: no LLM, no accounts, no upload.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "alarm_minutes": {
          "default": 0,
          "description": "If greater than 0, attach a display reminder that triggers this many minutes before each dated task's due time. 0 adds no reminder.",
          "minimum": 0,
          "type": "integer"
        },
        "detect_priority": {
          "default": true,
          "description": "Map priority keywords (urgent, asap, important, critical → high; someday, whenever → low) onto the iCalendar PRIORITY field, and drop the keyword from the title. Turn off to keep titles verbatim with no priority.",
          "type": "boolean"
        },
        "include_undated": {
          "default": true,
          "description": "Keep lines that have no recognised date as tasks with no due date. Turn off to emit only lines that resolved to a date.",
          "type": "boolean"
        },
        "reference_date": {
          "description": "ISO date (YYYY-MM-DD) that relative phrases like today, tomorrow, or Monday are measured from. Leave blank to use the current date.",
          "type": "string"
        },
        "text": {
          "description": "Your free-form notes or brain-dump, one task per line. Each line becomes a reminder. Natural-language due phrases are parsed and stripped from the title: today, tonight, tomorrow, day after tomorrow, weekday names, next week/month, 'in 3 days', 'in 2 weeks', ISO dates (2026-03-05), 3/5, 'March 5, 2027', '5 Mar', plus times like 'at 3pm', '5:30pm', '09:30', noon and midnight.",
          "type": "string"
        }
      },
      "required": [
        "text"
      ],
      "type": "object"
    }
  }
}