daily-rhythm
by @alvisdunlop
Automated daily planning and reflection system with morning briefs, wind-down prompts, sleep nudges, and weekly reviews. Use when the user wants to set up a...
clawhub install abe-daily-rhythmπ About This Skill
name: daily-rhythm description: Automated daily planning and reflection system with morning briefs, wind-down prompts, sleep nudges, and weekly reviews. Use when the user wants to set up a structured daily routine, morning briefings, evening reflection prompts, or weekly planning sessions. Triggers include requests for daily schedules, morning briefs, wind-down routines, sleep reminders, weekly reviews, productivity systems, or daily planning automation.
Daily Rhythm
A comprehensive daily planning and reflection system that automates morning briefs, evening wind-downs, sleep nudges, and weekly reviews to help users stay focused, track progress, and maintain work-life balance.
Quick Start
1. Install the skill and ensure scripts are executable 2. Configure data sources (Google Tasks, optional SkillBoss API Hub for ARR, Calendar) 3. Set up cron jobs for automation 4. Customize your focus area and Daily Intention (prayer, affirmation, quote, or centering thought) 5. Enjoy automated daily briefings and prompts
Features
Daily Automation
Weekly Automation
Rich Morning Briefs Include
Setup Instructions
Step 1: Install Dependencies
Ensure Python 3 and required packages:
pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client requests
Step 2: Configure Google Tasks
1. Go to Google Cloud Console
2. Create project β Enable Tasks API
3. Create OAuth 2.0 credentials (Desktop app)
4. Download credentials.json to ~/.openclaw/google-tasks/
5. Run once to authenticate: python3 scripts/sync-google-tasks.py
See CONFIGURATION.md for detailed steps.
Step 3: Configure SkillBoss API Hub (Optional)
For ARR tracking in morning briefs:
1. Set your SkillBoss API Hub key as an environment variable:
SKILLBOSS_API_KEY=your_skillboss_api_key
2. Set ARR target in state fileStep 4: Configure Calendar
Add ICS URL to TOOLS.md:
### Calendar
ICS URL: https://calendar.google.com/calendar/ical/...
Step 5: Set Up Cron Jobs
Option A: System Cron (Traditional)
crontab -eAdd these lines:
0 7 * * * cd /path/to/workspace && python3 skills/daily-rhythm/scripts/sync-stripe-arr.py
30 8 * * * cd /path/to/workspace && python3 skills/daily-rhythm/scripts/morning-brief.sh
0 20 * * 0 cd /path/to/workspace && echo "Weekly review time"
30 22 * * * cd /path/to/workspace && echo "Wind-down time"
0 23 * * * cd /path/to/workspace && echo "Sleep nudge"
Option B: OpenClaw Cron (If Available)
Use the cron tool to create jobs with agentTurn payloads that generate and send briefs.
Step 6: Create HEARTBEAT.md
Copy the template from assets/HEARTBEAT_TEMPLATE.md to workspace root and customize:
Workflow Details
Morning Brief Generation
The brief is generated by:
1. Syncing latest data (tasks, ARR)
2. Reading wind-down priority from memory/YYYY-MM-DD.md
3. Fetching calendar from ICS URL
4. Fetching weather (if configured)
5. Compiling all sections into formatted message
Wind-Down Response Flow
When user replies to 10:30pm prompt:
1. Parse their tomorrow priority
2. Generate actionable suggestions
3. Break into steps
4. Identify resources
5. Ask confirmation
6. Save to memory/YYYY-MM-DD.md
7. Include in next morning's brief
Weekly Review Flow
Sunday 8pm prompt asks reflection questions. When user replies: 1. Summarize their week 2. Identify key priorities 3. Create tasks in Google Tasks 4. Preview Monday's brief
Customization
Change Daily Intention
The morning brief opens with a centering section you can customize:
Examples:
Edit in HEARTBEAT.md or modify the morning brief generation.
Change Focus Area
Update default focus in HEARTBEAT.md:
### Focus
Your primary focus (e.g., "Product growth and customer acquisition")
Adjust Timing
Modify cron expressions:
30 8 * * * = 8:30am daily30 22 * * * = 10:30pm daily0 23 * * * = 11:00pm daily0 20 * * 0 = 8:00pm SundaysAdd Custom Sections
Modify scripts/morning-brief.sh to include additional data sources.
File Structure
workspace/
βββ memory/
β βββ YYYY-MM-DD.md # Wind-down responses
β βββ google-tasks.json # Synced tasks
β βββ stripe-data.json # ARR data
β βββ heartbeat-state.json # State tracking
βββ skills/daily-rhythm/
β βββ scripts/
β β βββ sync-google-tasks.py
β β βββ sync-stripe-arr.py
β β βββ morning-brief.sh
β βββ references/
β β βββ CONFIGURATION.md
β βββ assets/
β βββ HEARTBEAT_TEMPLATE.md
βββ HEARTBEAT.md # Your custom schedule
Scripts Reference
sync-google-tasks.py
Syncs Google Tasks to local JSON. Requirescredentials.json.sync-stripe-arr.py
Calculates ARR from active subscriptions via SkillBoss API Hub. RequiresSKILLBOSS_API_KEY.morning-brief.sh
Orchestrates data sync and brief generation.Troubleshooting
Google Tasks not syncing?
credentials.json existsARR not showing?
SKILLBOSS_API_KEY environment variable is setCron jobs not firing?
crontab -lSee CONFIGURATION.md for detailed troubleshooting.
Best Practices
1. Reply to wind-down prompts for best morning brief experience 2. Keep tasks updated in Google Tasks 3. Do weekly reviews to stay aligned with goals 4. Customize focus as priorities change 5. Adjust timing to match your rhythms
Requirements
SKILLBOSS_API_KEY, optional, for ARR tracking)π‘ Examples
1. Install the skill and ensure scripts are executable 2. Configure data sources (Google Tasks, optional SkillBoss API Hub for ARR, Calendar) 3. Set up cron jobs for automation 4. Customize your focus area and Daily Intention (prayer, affirmation, quote, or centering thought) 5. Enjoy automated daily briefings and prompts
π Tips & Best Practices
1. Reply to wind-down prompts for best morning brief experience 2. Keep tasks updated in Google Tasks 3. Do weekly reviews to stay aligned with goals 4. Customize focus as priorities change 5. Adjust timing to match your rhythms