Caldav Cli
Manage CalDAV calendars (iCloud, Google, Yandex) from the command line.
- Rating
- 4.5 (88 reviews)
- Downloads
- 7,698 downloads
- Version
- 1.0.0
Overview
Manage CalDAV calendars (iCloud, Google, Yandex) from the command line.
Complete Documentation
View Source →
caldav-cli
A CalDAV CLI client. Manages multiple accounts with secure OS keychain storage. Supports iCloud, Google (OAuth2), Yandex and any custom CalDAV server.
Installation
Requires Node.js >= 18.
npm install -g caldav-cli
After installation the caldav-cli command is available globally.
Quick Start
caldav-cli account add # Interactive wizard: pick provider, enter credentials
caldav-cli events list # Show events for the next 7 days
caldav-cli events create # Interactive wizard: create a new event
Account Management
Add account (interactive wizard — prompts for provider, credentials, tests connection):
caldav-cli account add
List configured accounts:
caldav-cli account list
Remove an account:
caldav-cli account remove <name>
View Events
caldav-cli events list # Next 7 days (default)
caldav-cli events list --from 2026-02-10 --to 2026-02-20
caldav-cli events list -a work # Specific account
caldav-cli events list -c "Team Calendar" # Filter by calendar name
caldav-cli events list -a work -c Personal --from 2026-03-01 --to 2026-03-31
JSON output (for scripting):
caldav-cli events list --json
caldav-cli events list --json --from 2026-02-10 --to 2026-02-20
Create Events
Interactive wizard (prompts for all fields):
caldav-cli events create
Non-interactive (all options via flags):
caldav-cli events create \
--title "Team standup" \
--start "2026-02-10T10:00" \
--end "2026-02-10T10:30" \
--account work \
--calendar "Team Calendar" \
--description "Daily sync" \
--location "Room 42"
Partial flags (wizard prompts for the rest):
caldav-cli events create --title "Lunch" --account work
JSON output after creation:
caldav-cli events create --json --title "Event" --start "2026-02-10T10:00" --end "2026-02-10T11:00"
Supported Providers
| Provider | Auth | Server URL |
|---|---|---|
| Apple iCloud | Basic (app-specific password) | https://caldav.icloud.com |
| Google Calendar | OAuth2 (Client ID + Secret) | https://apidata.googleusercontent.com/caldav/v2 |
| Yandex Calendar | Basic (app password) | https://caldav.yandex.ru |
| Custom | Basic | User provides URL |
Google Calendar Setup
Google requires OAuth2. Before running caldav-cli account add:
- Go to https://console.cloud.google.com/
- Create a project, enable CalDAV API
- Create OAuth client ID (Desktop app type)
- Note the Client ID and Client Secret
Data Storage
- Passwords, OAuth2 refresh tokens, and OAuth2 client credentials (Client ID, Client Secret, Token URL): OS keychain (macOS Keychain, Linux libsecret, Windows Credential Vault) via
@napi-rs/keyring. Never written to disk in plaintext. - Account metadata (name, provider ID, username, server URL):
~/.config/caldav-cli/config.json(file permissions0600).
config.json are automatically migrated to the keychain on first run.Flag Reference
events list
| Flag | Short | Description | Default |
|---|---|---|---|
| --account | -a | Account name | default account |
| --from | Start date (YYYY-MM-DD) | today | |
| --to | End date (YYYY-MM-DD) | today + 7 days | |
| --calendar | -c | Filter by calendar name | all calendars |
| --json | Output as JSON | false |
events create
| Flag | Short | Description |
|---|---|---|
| --title | -t | Event title |
| --start | -s | Start (YYYY-MM-DDTHH:mm) |
| --end | -e | End (YYYY-MM-DDTHH:mm) |
| --account | -a | Account name |
| --calendar | -c | Calendar name |
| --description | -d | Event description |
| --location | -l | Event location |
| --json | Output as JSON |
events create flags are optional. Omitted values trigger interactive prompts.
Installation
openclaw install caldav-cli
💻Code Examples
npm install -g caldav-cli
After installation the `caldav-cli` command is available globally.
## Quick Startcaldav-cli events create # Interactive wizard: create a new event
## Account Management
Add account (interactive wizard — prompts for provider, credentials, tests connection):caldav-cli events list --json --from 2026-02-10 --to 2026-02-20
## Create Events
Interactive wizard (prompts for all fields):caldav-cli account add # Interactive wizard: pick provider, enter credentials
caldav-cli events list # Show events for the next 7 days
caldav-cli events create # Interactive wizard: create a new eventcaldav-cli events list # Next 7 days (default)
caldav-cli events list --from 2026-02-10 --to 2026-02-20
caldav-cli events list -a work # Specific account
caldav-cli events list -c "Team Calendar" # Filter by calendar name
caldav-cli events list -a work -c Personal --from 2026-03-01 --to 2026-03-31caldav-cli events create \
--title "Team standup" \
--start "2026-02-10T10:00" \
--end "2026-02-10T10:30" \
--account work \
--calendar "Team Calendar" \
--description "Daily sync" \
--location "Room 42"Tags
Quick Info
Ready to Install?
Get started with this skill in seconds
Related Skills
4claw
4claw — a moderated imageboard for AI agents.
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.