← Back to Skills Marketplace
terrycarter1985

Workday Music Greeting

by terrycarter1985 · GitHub ↗ · v1.0.0 · MIT-0
darwinlinux ✓ Security Clean
39
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install workday-music-greeting
Description
Auto-switch Spotify music scenes on workdays by time-of-day and send scene-matched greeting emails with inline GIFs. Combines home-music scene logic with SMT...
README (SKILL.md)

📅🎵 Workday Music Greeting

Music that matches your moment. A greeting that matches your mood.

Auto-switch Spotify playlists throughout the workday and send yourself (or your team) a cheerful greeting email with a scene-matched GIF at every transition.


🎬 Scenes & Schedule

Time Scene Vibe Playlist
06:00–09:00 🌅 Morning Gentle start Peaceful Piano
09:00–12:00 🎯 Focus Deep work Deep Focus
12:00–14:00 ☕ Break Lunch recharge Peaceful Piano (lighter)
14:00–18:00 🎯 Focus Deep work Deep Focus
18:00–21:00 🌇 Wind-down Evening relax Chill Lounge
21:00+ 🔇 Off Silence
Weekend 🏖️ Skip No auto-scene

📦 Dependencies

What Why
🟢 Spotify CLI (spotify or spotify-applescript) Play/pause/volume control
📧 imap-smtp-email skill Send greeting emails via SMTP
🖼️ GIF files (optional) Inline images in greeting emails

🚀 Quick Start

1. Switch scene (auto-detect from time)

./scripts/workday-scene.sh

2. Switch to a specific scene

./scripts/workday-scene.sh morning
./scripts/workday-scene.sh focus
./scripts/workday-scene.sh break
./scripts/workday-scene.sh winddown
./scripts/workday-scene.sh off

3. Send a greeting email

./scripts/send-greeting.sh morning [email protected]

4. Full automation (scene + email)

./scripts/workday-automation.sh --email [email protected] --scene morning

Or let it auto-detect the scene:

./scripts/workday-automation.sh --email [email protected]

⏰ Cron Setup

Set up cron jobs for automatic workday switching. Example (Mon–Fri at 7:00 AM):

# Morning greeting
0 7 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --email [email protected] --scene morning

# Focus mode
0 9 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --scene focus

# Break
0 12 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --email [email protected] --scene break

# Afternoon focus
0 14 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --scene focus

# Wind down
0 18 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --email [email protected] --scene winddown

# Off
0 21 * * 1-5 /path/to/skills/workday-music-greeting/scripts/workday-automation.sh --scene off

Or use OpenClaw cron for cloud-managed scheduling:

# In your OpenClaw session:
"Remind me to switch to morning music every weekday at 7 AM"

🖼️ Adding GIFs

Place animated GIFs in the gifs/ directory:

gifs/
├── morning.gif    # Sunrise / coffee / stretching
├── focus.gif      # Typing / headphones / laser focus
├── break.gif      # Food / coffee break / walk
└── winddown.gif   # Sunset / couch / relaxation

Tips:

  • Keep GIFs under 2MB for reliable email delivery
  • Use gifs/README.md as reference for naming conventions
  • If a GIF is missing, the email sends without the image (graceful degradation)

⚙️ Configuration

Edit scripts/workday-scene.sh to customize:

# Playlists (Spotify URIs)
PLAYLIST_MORNING="spotify:playlist:37i9dQZF1DX4WYpdgoIcn6"
PLAYLIST_FOCUS="spotify:playlist:37i9dQZF1DWZeKCadgRdKQ"
PLAYLIST_BREAK="spotify:playlist:37i9dQZF1DX4sWSpwq3LiO"
PLAYLIST_WINDOWN="spotify:playlist:37i9dQZF1DWTwnEm1IYyoj"

# Speaker
SPEAKER="Sonos Move"

# Volumes (0-100)
VOL_MORNING=35
VOL_FOCUS=25
VOL_BREAK=40
VOL_WINDOWN=30

Edit scripts/send-greeting.sh to customize email subjects and body HTML.


📁 File Structure

workday-music-greeting/
├── SKILL.md                        # This documentation
├── scripts/
│   ├── workday-scene.sh            # Scene switching logic
│   ├── send-greeting.sh            # Email sending with GIF
│   └── workday-automation.sh       # Master orchestrator
└── gifs/
    ├── README.md                   # GIF naming guide
    ├── morning.gif                 # (user-provided)
    ├── focus.gif                   # (user-provided)
    ├── break.gif                   # (user-provided)
    └── winddown.gif                # (user-provided)

🔧 Advanced: Custom Scenes

Add new scenes in workday-scene.sh:

scene_workout() {
  echo "💪 Workout scene"
  "$SPOTIFY_CMD" play "spotify:playlist:YOUR_URI"
  "$SPOTIFY_CMD" volume 80
}

# Add to case block:
  workout) scene_workout ;;

Then add the matching email case in send-greeting.sh.


🐛 Troubleshooting

Issue Fix
Spotify not playing Ensure Spotify app is running; check $SPOTIFY_CMD path
Email not sending Verify SMTP env vars (SMTP_HOST, SMTP_USER, SMTP_PASS)
GIF not showing Check file exists in gifs/ and name matches scene exactly
Weekend triggering is_weekday() check should skip; verify system timezone

Author: OpenClaw Workspace
Version: 1.0.0
License: MIT

Usage Guidance
Before installing, verify that you want this skill to control Spotify and send emails, inspect the referenced imap-smtp-email dependency, configure SMTP credentials carefully, and only create cron schedules for recipients and times you approve.
Capability Analysis
Type: OpenClaw Skill Name: workday-music-greeting Version: 1.0.0 The skill provides automation for Spotify playback and email greetings based on a workday schedule. The shell scripts (workday-scene.sh, send-greeting.sh, and workday-automation.sh) perform logical time-based checks and call external tools (Spotify CLI and a sibling SMTP skill) as described in the documentation. No evidence of data exfiltration, malicious command execution, or prompt injection was found.
Capability Assessment
Purpose & Capability
The scripts do what the description claims: switch Spotify scenes and optionally send greeting emails. These actions are user-facing but purpose-aligned.
Instruction Scope
The documentation provides direct run commands and optional cron schedules; it does not appear to auto-install persistence or force execution without user setup.
Install Mechanism
There is no install spec and registry requirements are empty, but the skill actually depends on Spotify CLI, Node, SMTP configuration, and a sibling imap-smtp-email skill. This is disclosed in documentation but under-declared in metadata.
Credentials
Use of local Spotify control and SMTP credentials is proportionate to the stated music-and-email purpose, but users should understand which accounts and recipients are involved.
Persistence & Privilege
Persistence is limited to user-directed cron examples for weekday scheduling; no artifact shows hidden background installation or self-start behavior.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install workday-music-greeting
  3. After installation, invoke the skill by name or use /workday-music-greeting
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: auto-switch Spotify scenes on workdays + send scene-matched GIF greeting emails
Metadata
Slug workday-music-greeting
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Workday Music Greeting?

Auto-switch Spotify music scenes on workdays by time-of-day and send scene-matched greeting emails with inline GIFs. Combines home-music scene logic with SMT... It is an AI Agent Skill for Claude Code / OpenClaw, with 39 downloads so far.

How do I install Workday Music Greeting?

Run "/install workday-music-greeting" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Workday Music Greeting free?

Yes, Workday Music Greeting is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Workday Music Greeting support?

Workday Music Greeting is cross-platform and runs anywhere OpenClaw / Claude Code is available (darwin, linux).

Who created Workday Music Greeting?

It is built and maintained by terrycarter1985 (@terrycarter1985); the current version is v1.0.0.

💬 Comments