calculate_date
Perform date arithmetic: add/subtract units, snap to day/week/month/quarter/year boundaries, or compute date differences. Correctly handles leap years and month-end edge cases.
Instructions
Perform deterministic date arithmetic: add/subtract units, snap to day/week/month/quarter/year boundaries, or compute differences between dates. Handles leap years and month-end edge cases correctly. Example: 2026-01-31 + 1 month → 2026-02-28.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | ISO 8601 date or datetime | |
| unit | No | Unit for add/subtract | |
| value | No | Numeric amount for add/subtract/diff | |
| period | No | Period for start_of/end_of | |
| weekday | No | Weekday name for next_weekday/previous_weekday | |
| calendar | No | gregorian | |
| timezone | No | UTC | |
| operation | Yes | Operation: add/subtract value+unit, diff two dates, start_of/end_of period, next/previous weekday | |
| target_date | No | Second date for diff or comparison |