# cal > Read and display events from the Ursine CalDAV calendar. Shows upcoming events, schedules, and plans. Automatically uses default calendar - no arguments needed. - Author: ursinegutman - Repository: ursinegutman/skills - Version: 20260126044019 - Stars: 1 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/ursinegutman/skills - Web: https://mule.run/skillshub/@@ursinegutman/skills~cal:20260126044019 --- --- name: cal description: Read and display events from the Ursine CalDAV calendar. Shows upcoming events, schedules, and plans. Automatically uses default calendar - no arguments needed. argument-hint: "[] [--days N]" allowed-tools: Bash model-invocation: true --- # Calendar Reader Fetch and display events from the Ursine CalDAV calendar. Shows upcoming events, meetings, and scheduled items. ## Usage Simply invoke this skill to see your calendar: ``` /cal # Shows your Ursine calendar (default) ``` **Optional arguments:** ``` /cal --days 30 # Show next 30 days instead of default 90 /cal # Manually load any calendar by providing its URL ``` You can manually load any calendar feed (iCal/webcal URLs) by specifying the URL as an argument. This includes: - Your iCloud calendars (webcal:// URLs) - Google Calendar public feeds - Any other iCal/CalDAV feed ## Available Calendar Feeds ### Default: Ursine Calendar ``` /cal ``` The Ursine CalDAV calendar at `https://caldav.ber.computer` - authenticated with CALDAV_USER/CALDAV_PASS env vars. ### Travel Calendar (iCloud) ``` /cal "webcal://p157-caldav.icloud.com/published/2/MTA5ODcxMDUwNzEwOTg3MUuruFCtEQLn0P25DjHasd64n-COIsXd1G6TVSrKoQRoMflaDNUcE3olq13VKAdZtKHetyOh8hQZ8cuVTgShDgY" ``` Personal travel schedule and plans. ### Jewish Holidays ``` /cal "https://calendar.google.com/calendar/ical/en.judaism%23holiday%40group.v.calendar.google.com/public/basic.ics" ``` Jewish holidays from Google Calendar. Use for checking holiday dates, planning around observances, and cultural awareness. ### US Holidays ``` /cal "https://calendar.google.com/calendar/ical/en.usa%23holiday%40group.v.calendar.google.com/public/basic.ics" ``` US federal holidays from Google Calendar. Use for checking bank holidays, government closures, and planning business operations. ## Instructions When this skill is invoked: 1. If no URL is provided, use the default from `~/.claude/skills/cal/.env` 2. Parse the arguments - first argument is the calendar URL (optional), `--days N` specifies how many days ahead to show 3. Execute the script located in this skill directory 4. The script will fetch, parse, and display the calendar events ## Command ```bash python3 ~/.claude/skills/cal/read_calendar.py $ARGS ``` ## Configuration Defaults are stored in `~/.claude/skills/cal/.env`: ```bash DEFAULT_CAL_URL=https://caldav.ber.computer/ursine/calendar-uuid/ DEFAULT_DAYS=90 ``` The script: - Converts webcal:// URLs to https:// automatically - Supports authenticated CalDAV URLs via CALDAV_USER/CALDAV_PASS environment variables - Filters events to show only upcoming dates - Groups events by date for easy reading - Shows event name, date/time, location, and URLs - Handles URLs that get split across multiple arguments (automatically rejoins them) ## Examples ``` /cal # Shows Ursine calendar (default) /cal --days 30 # Next 30 days from Ursine calendar /cal "webcal://..." --days 7 # Travel calendar, next week /cal "https://calendar.google.com/..." --days 60 # US holidays, next 60 days ``` The script will: 1. Fetch the iCal data from the calendar URL (or default) 2. Parse all events from the calendar 3. Filter events within the specified date range 4. Display events grouped by date with formatting ## Additional Documentation For complete setup instructions, configuration options, troubleshooting, and examples, see [README.md](README.md).