Claude-skill-registry finish-the-day
End-of-day wrap up - analyzes all work done, creates detailed daily update log, commits all changes, and pushes to remote. Use when user says "finish the day", "end of day", "wrap up", or at end of work session.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/finish-the-day" ~/.claude/skills/majiayu000-claude-skill-registry-finish-the-day && rm -rf "$T"
skills/data/finish-the-day/SKILL.mdFinish the Day - Universal End-of-Day Wrap Up
This skill performs a comprehensive end-of-day wrap up for the current working directory. It analyzes all work done, creates a detailed log, commits changes, and pushes to the remote repository. Works on any project.
What This Skill Does
-
Analyze Today's Work
- Reviews all commits made today
- Identifies all modified, added, and deleted files
- Calculates lines added/removed
- Summarizes changes by category
-
Create Daily Update Log
- Generates comprehensive markdown documentation
- Organized by feature/area of work
- Includes code snippets for key changes
- Documents technical decisions and notes
-
Commit All Changes
- Stages all uncommitted changes
- Creates detailed commit message
- Follows conventional commit format
-
Push to Remote
- Pushes all commits to remote repository
- Reports sync status
Execution Steps
Step 1: Gather Information
Collect all data about today's work:
# Get today's date date +%Y-%m-%d # Get project name from current directory or package.json basename $(pwd) # Check git status for uncommitted changes git status # Get diff stats for uncommitted changes git diff --stat # Get today's commits (commits from today) git log --since="midnight" --oneline # Get detailed changes from today's commits git log --since="midnight" --stat # Get all files changed today (committed + uncommitted) git diff --name-only HEAD~10 2>/dev/null || git diff --name-only # Count lines changed git diff --shortstat
Step 2: Analyze Changes
For each changed file:
- Read the file to understand what was implemented
- Categorize changes by type:
- New features
- Bug fixes
- Refactoring
- Documentation
- Configuration
- Tests
- Identify key components created or modified
- Note any breaking changes
Step 3: Determine Daily Updates Location
Check for existing daily updates folder:
# Common locations to check (in order of preference) # 1. Daily-updates in parent directory (for monorepos) # 2. docs/daily-updates in project # 3. daily-updates in project root # 4. Create in project root if none exist ls -d ../Daily-updates 2>/dev/null || \ ls -d ./docs/daily-updates 2>/dev/null || \ ls -d ./daily-updates 2>/dev/null || \ echo "Will create ./daily-updates"
If no daily updates folder exists, ask the user where to create the log or create
./daily-updates/ in the project root.
Step 4: Create Daily Update Log
Generate a markdown file with the following structure:
# Daily Development Update - [DATE] ## Overview [Brief summary of what was accomplished] --- ## 1. [Feature/Area Name] ### [Sub-feature] - Description of changes - Key implementation details - Files affected ### Code Changes [Relevant code snippets or interface definitions] --- ## 2. [Next Feature/Area] ... --- ## Files Modified | File | Changes | |------|---------| | path/to/file | Description | ## Files Created | File | Lines | Description | |------|-------|-------------| | path/to/file | XXX | Description | --- ## Technical Notes - Important decisions made - Dependencies added - Configuration changes --- ## Next Steps / Considerations - Pending work - Future improvements - Issues to address
Step 5: Commit Changes
Stage and commit all changes:
# Stage all changes including untracked files git add -A # Show what will be committed git status # Create commit with detailed message git commit -m "$(cat <<'EOF' [Type]: Brief description Detailed changes: - Item 1 - Item 2 - Item 3 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> EOF )"
Step 6: Push to Remote
# Push all commits git push # Report final status git log --oneline -3
Daily Log Format Guidelines
File Naming
- Format:
YYYY-MM-DD-daily-update.md - Example:
2024-12-23-daily-update.md
Content Guidelines
- Be specific - Include actual file names, function names, component names
- Show code - Include interface definitions, key function signatures
- Document decisions - Note why certain approaches were chosen
- List next steps - Help future-you know where to continue
Categories to Consider
- UI/UX Changes - Visual updates, layout changes, styling
- New Features - New functionality added
- Bug Fixes - Issues resolved
- Refactoring - Code improvements without functionality changes
- API Changes - Backend, endpoints, data structures
- Configuration - Build, deployment, environment changes
- Documentation - README, comments, docs
- Tests - New or updated tests
- Dependencies - Added, removed, or updated packages
Tool Usage
This skill uses:
- For git operations and file system checksBash
- To find changed files by patternGlob
- To read file contents for analysisRead
- To create the daily update logWrite
withTask
agent - For deep analysis if neededExplore
Important Notes
- Works on current directory - No hardcoded paths
- Adapts to any project - Detects project structure automatically
- Preserves existing logs - Adds new log, doesn't overwrite
- Safe git operations - Never force pushes or destructive operations
- Asks before creating folders - Confirms daily-updates location with user
Activation Triggers
This skill activates when user says:
- "finish the day"
- "end of day"
- "wrap up"
- "wrap up the day"
- "daily wrap up"
- "create daily update"
- "commit and push everything"
- "end session"
Example Output
After running this skill, you'll have:
- Daily update log at
[project]/daily-updates/YYYY-MM-DD-daily-update.md - Git commit with detailed message summarizing all changes
- Pushed to remote - All work synced to remote repository
- Summary report showing:
- Files changed (X modified, Y created, Z deleted)
- Lines changed (+XXX, -YYY)
- Commits pushed (X commits)
- Daily log location