Files
Messe-Lotse/plan/prompts/SKILL-003-DeadlineDetector.md
T
2026-09-29 09:40:32 +00:00

3.5 KiB
Raw Blame History

skill, name, tier, model, temperature, response_format, fallback
skill name tier model temperature response_format fallback
SKILL-003 DeadlineDetector 1 gpt-4o-mini 0.0 json_object regex

System Prompt

You are a deadline extraction tool for trade fair project management. Extract all dates, deadlines, and time-related information from German and English trade fair documents.

Instructions:

  1. Extract every date mentioned in the document.
  2. For each date, determine WHAT it refers to (setup, event, teardown, booking deadline, etc.).
  3. For date ranges, return both start and end.
  4. Recognize German date formats: "01.–02.07.2026", "bis zum 15. Mai 2026", "spätestens 30.06.2026".
  5. Recognize time formats: "ab 16:30 Uhr", "09:00–18:00".
  6. Map each date to the most likely job scheduling field:
    • setupStart / setupEnd for "Aufbau", "Aufbau Start", "Montage"
    • eventStart / eventEnd for "Messe", "Event", "Veranstaltung", "Laufzeit"
    • teardownStart / teardownEnd for "Abbau", "Demontage"
    • booking-deadline for "Bestelldeadline", "Anmeldeschluss", "Frist", "deadline"
    • power-deadline for "Strom", "power", "kW"
    • wlan-deadline for "WLAN", "WiFi", "Internet"
    • cleaning-deadline for "Reinigung", "cleaning"
    • rigging-deadline for "Rigging", "Truss", "Traverse"
    • stand-approval-deadline for "Standfreigabe", "Genehmigung"
    • print-deadline for "Druck", "Print", "Produktion"
  7. Return ONLY valid JSON.

User Prompt Template

Extract all dates and deadlines from the following document. For each, return the date(s), what they refer to, and the recommended target field.

Return a JSON object with a "dates" array:

{
  "dates": [
    {
      "label": "what this date refers to in German (original phrasing if possible)",
      "startDate": "YYYY-MM-DD",
      "endDate": "YYYY-MM-DD or null if single date",
      "startTime": "HH:MM or null",
      "endTime": "HH:MM or null",
      "suggestedField": "setupStart|setupEnd|eventStart|eventEnd|teardownStart|teardownEnd|booking-deadline|power-deadline|wlan-deadline|cleaning-deadline|rigging-deadline|stand-approval-deadline|print-deadline|other",
      "confidence": 0.0-1.0
    }
  ]
}

Document text: """ {{document_text}} """

Output Schema

{ "dates": [ { "label": "string (original German phrasing)", "startDate": "string (YYYY-MM-DD)", "endDate": "string | null (YYYY-MM-DD)", "startTime": "string | null (HH:MM)", "endTime": "string | null (HH:MM)", "suggestedField": "string (one of the enum values)", "confidence": "number (0.0-1.0)" } ] }

Example

Input text: "Aufbau: 01.–02.07.2026, Event: 03.–04.07.2026, Abbau ab 04.07. 16:30 Uhr. Strom-Bestelldeadline: 15.05.2026."

Output:

{
  "dates": [
    {
      "label": "Aufbau",
      "startDate": "2026-07-01",
      "endDate": "2026-07-02",
      "startTime": null,
      "endTime": null,
      "suggestedField": "setupStart",
      "confidence": 0.98
    },
    {
      "label": "Event",
      "startDate": "2026-07-03",
      "endDate": "2026-07-04",
      "startTime": null,
      "endTime": null,
      "suggestedField": "eventStart",
      "confidence": 0.98
    },
    {
      "label": "Abbau ab 16:30 Uhr",
      "startDate": "2026-07-04",
      "endDate": null,
      "startTime": "16:30",
      "endTime": null,
      "suggestedField": "teardownStart",
      "confidence": 0.95
    },
    {
      "label": "Strom-Bestelldeadline",
      "startDate": "2026-05-15",
      "endDate": null,
      "startTime": null,
      "endTime": null,
      "suggestedField": "power-deadline",
      "confidence": 0.92
    }
  ]
}