A Python script to sync time tracking entries from Clockify into your daily Obsidian Markdown daily notes.
- Fetches time entries from Clockify for the last N days
- Formats them into a collapsible Obsidian callout block:
> [!clockify] Clockify time log > Project - Task: 01:15:33 (14:22|Optional comment) - Inserts or updates the block inside daily
.mdnotes - Converts UTC to your specified time zone (e.g.
Europe/Moscow)
- Make sure you have Python 3.9+ installed.
- Clone this repository:
git clone https://github.com/ekiktenko/clockify2obsidian.git cd clockify2obsidian - Install dependencies:
pip install requests
- Copy the example config:
cp clockify_config.example.json clockify_config.json
- Edit
clockify_config.json:{ "api_key": "YOUR_CLOCKIFY_API_KEY", "vault_path": "Obsidian/daily_notes", "days_back": 3, "time_zone": "Europe/Moscow" }
To get your Clockify API key:
https://app.clockify.me/user/settings
python run_clockify_sync.py# 2025-07-12
> [!clockify] Clockify time log
> Life - Cleaning: 01:16:10 (16:22)
> Work - Automation: 01:31:07 (18:04|Building automation)- This script fetches only your own entries from Clockify
- Existing
[!clockify]blocks will be replaced - All logic is local and simple โ modify freely
MIT. Use at your own risk. No guarantees, no support, but contributions welcome.