{"skill":{"slug":"learning-checkin","displayName":"Learning Checkin","summary":"Daily learning habit builder with check-ins and smart reminders","description":"---\nname: learning-checkin\ndescription: Daily learning habit builder with check-ins and smart reminders\nmetadata: { \"copaw\": { \"emoji\": \"📚\" } }\n---\n\n# Learning Check-in Skill\n\nHelp users build a daily learning habit through simple check-ins and intelligent reminders.\n\n## Overview\n\nThis skill enables users to track their daily learning with:\n- Simple daily check-in (just say \"I'm done\" or \"check-in complete\")\n- Automatic streak tracking\n- Optional smart reminders\n\n## Data Storage\n\nAll data is stored locally in a `data` subfolder next to the skill:\n\n```\n<skill_directory>/data/\n├── rule.md           - User's customizable rules\n├── records.json      - Check-in history\n├── version.txt       - Current skill version\n├── cron_status.json  - Reminder configuration status\n└── reminder_log.json - Reminder sending log\n```\n\nThe data folder is automatically created on first use.\n\n## Commands\n\n### 1. Initialize (First Time)\n\n```bash\npython <skill_path>/learning_checkin.py init\n```\n\n**Returns:**\n- `welcome_message` - Welcome text for the user\n- `environment` - Only contains `user_language` (for message display)\n- `reminder_strategy` - Suggested reminder times\n- `cron_status` - Current reminder configuration status\n\n**Agent action:** \n1. Run the init command\n2. Show welcome message and explain the check-in process\n3. Ask user if they want daily reminders\n4. Ask user to start their first check-in\n\n### 2. Check-in\n\n```bash\npython <skill_path>/learning_checkin.py checkin\n```\n\n**Returns:**\n- `success` - Whether check-in was recorded\n- `streak` - Current streak count\n- `message` - Celebration message (in English, translate to user's language)\n\n### 3. Status\n\n```bash\npython <skill_path>/learning_checkin.py status\n```\n\n**Returns:**\n- `checked_in_today` - Whether user has checked in today\n- `streak` - Current streak count\n- `total_checkins` - Total days checked in\n- `message` - Status message (in English)\n\n### 4. Get User Language\n\n```bash\npython <skill_path>/learning_checkin.py env\n```\n\n**Returns:**\n- `user_language` - Detected language (zh/en)\n\n**Why needed:** Only to display messages in the user's preferred language.\n\n### 5. Get Reminder Message\n\n```bash\npython <skill_path>/learning_checkin.py message <time>\n```\n\nWhere `<time>` is one of: `09:00`, `17:00`, `20:00`\n\n**Returns:**\n- `message` - Reminder text (in English, translate to user's language)\n\n### 6. Check Reminder Status\n\n```bash\npython <skill_path>/learning_checkin.py reminder <time>\n```\n\n**Returns:**\n- `should_send` - Whether reminder should be sent\n- `checked_in` - Whether user has already checked in today\n\n### 7. Update Cron Status\n\n```bash\npython <skill_path>/learning_checkin.py update-cron <times>\n```\n\n**When to use:** After setting up reminders (optional).\n\n### 8. Get Cron Status\n\n```bash\npython <skill_path>/learning_checkin.py cron-status\n```\n\n**Returns:**\n- `configured` - Whether reminders are set up\n- `times` - Configured reminder times\n\n## Default Behavior\n\n### Check-in Rule\n- User checks in once per day\n- Simply tell the Agent \"I'm done\" or \"check-in complete\"\n\n### Reminder Strategy (Suggested)\nIf user wants reminders, Agent can use any scheduling method:\n- **Evening (20:00)** is recommended as default\n- Or user's preferred time\n\nThe skill will check if user already checked in before sending reminders.\n\n### Streak System\n- Consecutive days = streak\n- Miss a day = streak resets\n\n## Customization\n\nUsers can edit the `rule.md` file (in the data folder) to customize reminder messages.\n\n## Version\n\nSee GitHub releases: https://github.com/daizongyu/learning-checkin/releases\n\n## Agent Guidelines\n\n### First Interaction (Welcome)\nThe Agent should:\n1. Be warm and encouraging\n2. Explain the simple check-in process\n3. Ask if user wants daily reminders (optional feature)\n4. Ask: \"Ready to start your first check-in?\"\n\n### Check-in Interaction\n- Translate messages to user's language\n- Celebrate the check-in\n- Show streak count\n\n### Reminder Implementation (Optional)\nIf user wants reminders:\n- Agent decides how to implement (cron, native scheduler, etc.)\n- The skill provides `reminder` and `message` commands\n- Check if user already checked in before sending\n\n## Technical Notes\n\n- **Data collection**: Only `user_language` is collected for message display\n- All messages are in **English** - Agent translates to user's language\n- All file paths use UTF-8 encoding\n- Compatible with Windows, Linux, macOS\n- Data stored in `data` subfolder next to the skill\n- **No external network requests** from the skill\n- **No automatic scheduling** - Agent decides implementation\n- No external dependencies (Python standard library only)\n\n## Version\n\nCurrent version: 3.1.0\n\nGitHub: https://github.com/daizongyu/learning-checkin","tags":{"latest":"3.1.0"},"stats":{"comments":0,"downloads":742,"installsAllTime":0,"installsCurrent":0,"stars":1,"versions":14},"createdAt":1773420767565,"updatedAt":1778491890041},"latestVersion":{"version":"3.1.0","createdAt":1773585949707,"changelog":"- Version bumped to 3.1.0.\n- DESIGN.md file removed for clarity and maintenance.\n- Documentation updated in SKILL.md and README.md, including version numbers and minor refinements.\n- No changes to commands or core user functionality.","license":"MIT-0"},"metadata":null,"owner":{"handle":"daizongyu","userId":"s170jmmb4d9j99xasybh99n20x8850qv","displayName":"Mike Dai","image":"https://avatars.githubusercontent.com/u/7587755?v=4"},"moderation":null}