Auto-deliver final messages to loved ones after 30 days of inactivity. Use when user wants to record a final message, configure email delivery, manage voice messages, or check configuration status.
Manage final messages to be delivered to loved ones when the user is unreachable for an extended period.
This skill helps users record a final message (voice or text) to be delivered to their parents or loved ones if they haven't been active for 30 days. The system:
When user says something like "我想给我爸妈留下最后一句话":
scripts/save_message.py --message "content" [--audio-path path]Ask user to choose delivery method:
Save settings using: scripts/configure_delivery.py --method email --contact "[email protected]"
Users can configure email settings through natural chat conversation:
Trigger phrases:
Interactive flow:
Ask for sender email:
Ask for authorization code:
Ask for recipient email:
Confirm and save:
python3 scripts/configure_delivery.py --method email --contact "{contact}" --smtp-host smtp.qq.com --smtp-port 465 --smtp-user "{smtp_user}" --smtp-pass "{smtp_pass}"python3 scripts/debug_mode.py on then python3 scripts/debug_mode.py sendSecurity notes for interactive config:
Users can attach a voice recording to their message:
Option A: Save existing audio file
python3 scripts/audio_manager.py save /path/to/recording.wav
Option B: Record from microphone (if available)
python3 scripts/audio_manager.py record
Play back saved audio:
python3 scripts/audio_manager.py play
List all saved audio files:
python3 scripts/audio_manager.py list
The audio file will be attached to the email when the final message is delivered.
Users can manage debug mode through normal chat conversation by explicitly mentioning "最后留言":
Enable debug mode: When user says: "最后留言 开启调试模式", "最后留言 打开调试", or "最后留言 启用调试"
python3 scripts/debug_mode.py onDisable debug mode: When user says: "最后留言 关闭调试模式" or "最后留言 禁用调试"
python3 scripts/debug_mode.py offCheck debug mode status: When user says: "最后留言 调试模式状态" or "最后留言 调试状态"
python3 scripts/debug_mode.py statusSend immediate test (when debug mode is on): When user says: "最后留言 立即发送测试" or "最后留言 测试发送"
python3 scripts/debug_mode.py sendRun scripts/check_activity.py daily via cron to:
python3 scripts/save_message.py --message "爸爸妈妈我爱你们"
# First save the audio file
python3 scripts/audio_manager.py save /path/to/voice-recording.wav
# Or record directly (requires microphone)
python3 scripts/audio_manager.py record
python3 scripts/configure_delivery.py --method email --contact "[email protected]"
# Methods: email, wechat, phone
python3 scripts/audio_manager.py save /path/to/audio.wav # Save existing audio
python3 scripts/audio_manager.py record # Record from mic
python3 scripts/audio_manager.py play # Play saved audio
python3 scripts/audio_manager.py list # List all audio files
python3 scripts/check_activity.py
python3 scripts/get_status.py
python3 scripts/reset.py
Enable debug mode to bypass the 30-day wait and test immediate delivery:
Enable/Disable debug mode:
python3 scripts/debug_mode.py on # Enable debug mode
python3 scripts/debug_mode.py off # Disable debug mode
python3 scripts/debug_mode.py status # Check debug mode status
Immediate send in debug mode:
python3 scripts/debug_mode.py send # Send message immediately (debug)
Or use the check script with debug flag:
python3 scripts/check_activity.py --debug-send # Force immediate send
When debug mode is enabled:
All data is stored in SQLite database at ~/.openclaw/last-words/data.db:
message: Stores the final message content and audio pathconfig: Stores delivery method and contact informationactivity_log: Tracks daily check results and deliveriesAdd to OpenClaw cron:
openclaw cron add --name "last-words-check" --schedule "0 9 * * *" --command "python3 ~/.openclaw/workspace/last-words/scripts/check_activity.py"