
daily-rhythm
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.
- Installs
- 62
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/aaaaqwq/agi-super-team --skill daily-rhythm- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads daily-rhythm automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
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
- Install the skill and ensure scripts are executable
- Configure data sources (Google Tasks, optional Stripe, Calendar)
- Set up cron jobs for automation
- Customize your focus area and Daily Intention (prayer, affirmation, quote, or centering thought)
- Enjoy automated daily briefings and prompts
Features
Daily Automation
- 7:00am: Background data sync (tasks, ARR)
- 8:30am: Morning Brief with priority, calendar, weather, tasks
- 10:30pm: Wind-down prompt to plan tomorrow's priority
- 11:00pm: Sleep nudge with encouraging words
Weekly Automation
- Sunday 8:00pm: Weekly review for reflection and task planning
Rich Morning Briefs Include
- 🙏 Daily Intention — Prayer, affirmation, quote, or centering thought
- Calendar events
- Focus area
- ARR progress tracking (optional Stripe integration)
- Today's priority (from wind-down or top task)
- Actionable suggestions
- Step-by-step plan
- Helpful resources
- Task list from Google Tasks
- Weather (if configured)
- Open loops from yesterday
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 stripe
Step 2: Configure Google Tasks
- Go to Google Cloud Console
- Create project → Enable Tasks API
- Create OAuth 2.0 credentials (Desktop app)
- Download
credentials.jsonto~/.openclaw/google-tasks/ - Run once to authenticate:
python3 scripts/sync-google-tasks.py
See CONFIGURATION.md for detailed steps.
Step 3: Configure Stripe (Optional)
For ARR tracking in morning briefs:
- Create
.env.stripein workspace root:STRIPE_API_KEY=sk_live_... - Set ARR target in state file
Step 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 -e
# Add 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:
- Daily Intention text (prayer, affirmation, quote, or centering thought)
- Focus area
- ARR target (if using Stripe)
Workflow Details
Morning Brief Generation
The brief is generated by:
- Syncing latest data (tasks, ARR)
- Reading wind-down priority from
memory/YYYY-MM-DD.md - Fetching calendar from ICS URL
- Fetching weather (if configured)
- Compiling all sections into formatted message
Wind-Down Response Flow
When user replies to 10:30pm prompt:
- Parse their tomorrow priority
- Generate actionable suggestions
- Break into steps
- Identify resources
- Ask confirmation
- Save to
memory/YYYY-MM-DD.md - Include in next morning's brief
Weekly Review Flow
Sunday 8pm prompt asks reflection questions. When user replies:
- Summarize their week
- Identify key priorities
- Create tasks in Google Tasks
- Preview Monday's brief
Customization
Change Daily Intention
The morning brief opens with a centering section you can customize:
Examples:
- Faith-based: Prayer, scripture verse, devotional thought
- Secular: Affirmation, intention-setting, gratitude practice
- Quotes: Inspirational quotes, stoic philosophy, poetry
- Goals: Daily mission statement, values reminder
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 Sundays
Add 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. Requires credentials.json.
sync-stripe-arr.py
Calculates ARR from active Stripe subscriptions. Requires .env.stripe.
morning-brief.sh
Orchestrates data sync and brief generation.
Troubleshooting
Google Tasks not syncing?
- Verify
credentials.jsonexists - Check Tasks API is enabled
- Run script manually to see errors
Stripe ARR not showing?
- Verify
.env.stripewith valid API key - Check for active subscriptions
- Run sync script manually
Cron jobs not firing?
- Verify cron is installed:
crontab -l - Check script paths are absolute
- Review system logs
See CONFIGURATION.md for detailed troubleshooting.
Best Practices
- Reply to wind-down prompts for best morning brief experience
- Keep tasks updated in Google Tasks
- Do weekly reviews to stay aligned with goals
- Customize focus as priorities change
- Adjust timing to match your rhythms
Requirements
- Python 3.7+
- Google Tasks API credentials (for task sync)
- Stripe API key (optional, for ARR tracking)
- Calendar ICS URL (optional, for events)
- Cron or OpenClaw cron system
FAQ
What does the daily-rhythm skill do?
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.
How do I install daily-rhythm?
Run npx skills add https://github.com/aaaaqwq/agi-super-team --skill daily-rhythm in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/daily-rhythm/ (personal) or .claude/skills/daily-rhythm/ (project).
Which AI agents can use daily-rhythm?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is daily-rhythm safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains daily-rhythm?
It is published by aaaaqwq in aaaaqwq/agi-super-team. It has 62 recorded installs.
More from aaaaqwq/agi-super-team
multi-search-engine
aaaaqwq/agi-super-team
Multi search engine integration with 17 engines (8 CN + 9 Global). Supports advanced search operators, time filters, site search, privacy engines, and WolframAlpha knowledge queries. No API keys required.
web-scraping-automation
aaaaqwq/agi-super-team
自动化爬取网站数据和 API 接口。当用户需要抓取网页内容、调用 API、解析数据或创建爬虫脚本时使用此技能。
wechat-channel
aaaaqwq/agi-super-team
微信 (WeChat) 与 OpenClaw 的双向集成通道。基于 Wechaty + PadLocal 实现微信消息的接收和发送,支持私聊、群聊、@提及检测、图片/文件传输。当需要通过微信与 AI 助手交互、接收微信消息触发 AI 响应、或从 OpenClaw 发送消息到微信时使用此技能。
project-management
aaaaqwq/agi-super-team
Open the skill to read its SKILL.md instructions.
wecom-automation
aaaaqwq/agi-super-team
企业微信个人账号直连自动化。基于 Wechaty 框架实现企业微信消息接收、自动同意好友、知识库问答、人工介入提醒。适用于企业微信个人机器人和自动化助手场景。
memory-hygiene
aaaaqwq/agi-super-team
Audit, clean, and optimize Clawdbot's vector memory (LanceDB). Use when memory is bloated with junk, token usage is high from irrelevant auto-recalls, or setting up memory maintenance automation.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.