Skip to main content
ollim-bot provides full read/write access to one or more Google calendars. You can list, show, add, update, and delete events through CLI commands, and the agent can present events in Discord embeds with a delete button for one-click removal. By default, ollim-bot queries your primary calendar only. Configure the google_calendars runtime config key with a comma-separated list of calendar IDs to query multiple calendars at once.

Prerequisites

Setup

No additional setup is required. Once you’ve completed the Google integration setup, Calendar is ready to use.

Usage

The ollim-bot cal subcommand provides seven operations.

List today’s events

Shows events for the current day across every configured calendar. Each line displays the event ID, date, time range, and title:
When more than one calendar is configured, events from all calendars are merged and sorted client-side, and each line is tagged with its source calendar ID in brackets — for example [primary] or [work@example.com].Pass --calendar <id> to query a single calendar instead of all configured ones:

List upcoming events

Shows events for the next 7 days by default. Use --days to change the window:

Show event details

Displays detailed information including title, time, location, description, link, attendees (by email), status, and event ID.Pass --calendar <id> when the event lives on a calendar other than the first one you’ve configured. Defaults to the first entry of google_calendars.

Add an event

Times without a timezone are treated as the configured timezone (OLLIM_TIMEZONE).

Update an event

At least one of --summary, --start, --end, or --description must be provided. --calendar <id> targets a specific calendar; otherwise the first configured calendar is used.

Delete an event

Permanently deletes the event. Pass --calendar <id> when the event lives on a calendar other than the first configured one.

List available calendars

Lists every calendar your Google account can access, showing the calendar ID and its display name:
Use this output to pick IDs for the google_calendars config key.

Configuring which calendars to query

Calendar selection is controlled by the google_calendars runtime config key. It accepts a comma-separated list of calendar IDs — defaults to primary. For write operations (add, update, delete, show), the first entry in google_calendars is used when --calendar is not provided. Run ollim-bot cal calendars to discover the IDs available on your account. See the configuration reference for how to inspect and change runtime config keys.
A 404 on an individual calendar (typo, revoked access) is logged as (calendar '<id>' not found — skipped) and the command continues with the remaining calendars.
One function is exported from google/calendar.py for use by the button handler in views.py:This is called via asyncio.to_thread in the button handler to avoid blocking the event loop. The button’s action string encodes the calendar ID as event_del:<calendar_id>/<event_id> — the legacy event_del:<event_id> form (no calendar ID) still works and defaults to primary for backward compatibility.

Troubleshooting

Your Google connection may have expired or been revoked. The bot detects this automatically and prompts you to reconnect — run /google-auth to re-authenticate.
Event IDs are displayed as the first column in ollim-bot cal today and ollim-bot cal upcoming output. When using embed buttons, the agent handles this automatically.
Run ollim-bot cal calendars to list every calendar your Google account can access, with its ID and display name. The ID is what you pass to --calendar and to the google_calendars config key.
All times are handled in the configured timezone (OLLIM_TIMEZONE, defaults to auto-detected system timezone with a UTC fallback). Times you enter without a timezone are assumed to be in this timezone.

Next steps

Google Tasks

Manage your task list through similar CLI and agent interactions.

Google integration

Shared OAuth setup and all available Google services.

Embeds & buttons

How the agent builds Discord embeds with action buttons.

CLI reference

Full reference for all ollim-bot CLI subcommands.