← ClaudeAtlas

timesheetlisted

Generate a weekly work summary from git history across all your repositories, with hour estimates derived from commit timestamps. Use when the user asks for a timesheet, hours worked, a weekly summary, or triggers /timesheet.
lucas-lima-s/claude-skill-timesheet · ★ 0 · Code & Development · score 70
Install: claude install-skill lucas-lima-s/claude-skill-timesheet
# Timesheet — Weekly Work Summary Generates a summary of work done during the current week (or specified period) by reading git logs across all repos. ## Parameters | Parameter | Default | Description | |---|---|---| | `{since}` | `last monday` | Start date (git log format) | | `{until}` | `now` | End date | | `{author}` | Auto-detected from `git config user.name` | Filter by author | ## Execution 1. Detect author name: `git config user.name` 2. For each repo, run: ```bash git log --since="{since}" --until="{until}" --author="{author}" --format="%aI|%s" --date=short ``` Use ISO timestamps (`%aI`) to calculate time spans between commits. 3. Repos to scan, resolved in this order: 1. `data/repos.json` in the skill directory, if present (explicit list — always wins); 2. otherwise every directory containing a `.git` entry directly under `$SKILLS_REPOS_ROOT`; 3. otherwise the current working directory, if it is a git repository. If none of the three resolves, report `timesheet: no repositories configured — see SETUP.md` and stop. There is no built-in default path. See `SETUP.md` for `data/repos.json` format and how to override. 4. Parse ticket IDs from commit subjects using `ticket_pattern` from `data/repos.json` (default `[A-Z][A-Z0-9]+-[0-9]+`). Commits with no match are grouped under `—`. 5. *(Optional)* Enrich each ticket ID with its title if an issue-tracker MCP server is available in the session (Jira, Linear, GitHub Issues, …). Probe once; if