time-tracker/SKILL.md
Track work sessions and maintain a WORKLOG.md file. Use this skill at the end of any significant work session, when the user asks to log work, update the worklog, or track time spent. Also use when the user says things like "log this", "update worklog", "track time", "record what we did", or "add to worklog". This skill should be used proactively at natural stopping points like finishing a feature, fixing a bug, or ending a coding session.
npx skillsauth add arielsand/my-opencode-skills time-trackerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You maintain the project's WORKLOG.md file, recording what was accomplished in each work session with accurate time tracking.
When triggered, you:
The file is at docs/WORKLOG.md relative to the project root. If it doesn't exist, create it with the initial structure shown below.
Each entry follows this exact structure:
---
## [YYYY-MM-DD HH:MM] Session Title - Brief Description
**Duration**: X hours (or X.Y hours)
**Key Deliverables**:
- Specific thing that was done
- Another specific thing
- Files created or modified
- Tests written or results
**Notes**: Context about decisions made, issues encountered, or follow-up items.
The --- separator goes BEFORE each entry. Entries are ordered newest-first (prepended after the header section, before older entries).
Title: Be specific. "User Manager Bug Fixes" not "Fixed stuff". Include the module or feature area.
Duration: Calculate automatically using these signals from the conversation, in order of reliability:
Message count heuristic: Count the user-assistant message pairs in the conversation. Use this scale:
Task complexity adjustment: Within each range, adjust based on:
User correction: Always present the calculated estimate to the user for confirmation. If they disagree, use their number.
Round to the nearest 0.5 hours. The format is decimal: 2.5 hours, never 2:30 or 2 hours 30 min.
Key Deliverables: List concrete outcomes, not activities. Write "Created 5 API endpoints for user management" not "Worked on API". Include:
Notes: Capture context that would be useful later:
The file ends with a ## Time Summary section containing three tables. This is the most important part — it provides the project's time tracking overview. You MUST rebuild these tables from scratch every time you add an entry. Do NOT try to incrementally edit them — scan ALL entries and recompute.
After inserting the new entry, follow these steps in order:
## [YYYY-MM-DD HH:MM] header and its **Duration**: X hours lineOne row per unique date across all entries. If a date has multiple entries, sum their hours.
### Daily Totals
| Date | Day | Hours | Focus |
|------|-----|-------|-------|
| 2026-04-01 | Tuesday | 3.0 | User Manager Debugging & UI Polish |
| 2026-03-15 | Sunday | 7.0 | Mobile Authentication API |
Group daily entries by ISO week number. Use PHP's Carbon::parse($date)->isoWeek() logic or equivalent:
### Weekly Totals
| Week | Days Worked | Total Hours |
|------|-------------|-------------|
| 2026-W11 (Mar 9-15) | 1 | 7.0 hours |
| 2026-W14 (Mar 30-Apr 5) | 1 | 3.0 hours |
YYYY-WNN (Mon DD-Mon DD) or YYYY-WNN (Mon DD-Mon DD) crossing months like (Mar 30-Apr 5). Use 3-letter month abbreviations. hours suffixTo determine the week's date range: ISO weeks start on Monday. Find the Monday and Sunday of that week.
Group weekly entries by month:
### Monthly Totals
| Month | Days Worked | Total Hours |
|-------|-------------|-------------|
| March 2026 | 3 | 17.5 hours |
| April 2026 | 1 | 3.0 hours |
| **TOTAL** | **4** | **20.5 hours** |
March 2026) hours suffix**TOTAL** in Month column, bold count of ALL distinct dates across all months in Days Worked column, bold sum of ALL hours across all months in Total Hours column.Given these entries:
The Time Summary section should look exactly like:
## Time Summary
### Daily Totals
| Date | Day | Hours | Focus |
|------|-----|-------|-------|
| 2026-04-01 | Tuesday | 3.0 | User Manager Debugging & UI Polish |
| 2026-03-26 | Thursday | 2.5 | Mobile Change Password API |
| 2026-03-22 | Sunday | 8.0 | Mobile Profile Endpoints + Architecture Map |
| 2026-03-15 | Sunday | 7.0 | Mobile Authentication API |
### Weekly Totals
| Week | Days Worked | Total Hours |
|------|-------------|-------------|
| 2026-W11 (Mar 9-15) | 1 | 7.0 hours |
| 2026-W12 (Mar 16-22) | 1 | 8.0 hours |
| 2026-W13 (Mar 23-29) | 1 | 2.5 hours |
| 2026-W14 (Mar 30-Apr 5) | 1 | 3.0 hours |
### Monthly Totals
| Month | Days Worked | Total Hours |
|-------|-------------|-------------|
| March 2026 | 3 | 17.5 hours |
| April 2026 | 1 | 3.0 hours |
| **TOTAL** | **4** | **20.5 hours** |
---
When creating docs/WORKLOG.md from scratch (file doesn't exist or is empty/corrupt), use this exact template. The new entry and Time Summary are filled with the session's data. This template is also the authoritative reference for the complete file structure — every WORKLOG must match this layout.
# Work Log
Project development activity log.
---
## [YYYY-MM-DD HH:MM] Session Title
**Duration**: X.Y hours
**Key Deliverables**:
- First deliverable
- Second deliverable
**Notes**: Context and observations.
---
## Time Summary
### Daily Totals
| Date | Day | Hours | Focus |
|------|-----|-------|-------|
| YYYY-MM-DD | DayName | X.Y | Short focus description |
### Weekly Totals
| Week | Days Worked | Total Hours |
|------|-------------|-------------|
| YYYY-WNN (Mon DD-Mon DD) | N | X.Y hours |
### Monthly Totals
| Month | Days Worked | Total Hours |
|-------|-------------|-------------|
| Month YYYY | N | X.Y hours |
| **TOTAL** | **N** | **X.Y hours** |
---
Rules for the template:
# Work Log + Project development activity log. + --- is always the file opener--- on its own line, then ## [date time] Title## Time Summary section is always the last section in the file--- after the Monthly Totals tabledocs/WORKLOG.md## Time Summary section entirely.development
MUST use whenever the user asks for a security audit, vulnerability assessment, penetration test review, security scan, compliance check (GDPR, SOC2, PCI-DSS), or hardening review of any codebase, API, frontend, or infrastructure. Triggers on phrases like: "audit security", "security review", "check for vulns", "scan for secrets", "assess compliance", "pentest review", "hardening audit", "OWASP check", "CWE audit", "SAST/DAST", "security posture", or any request that involves finding vulnerabilities, misconfigurations, credential leaks, injection flaws, auth weaknesses, or data-exposure risks in code. Use this skill even if the user only mentions a subset (e.g., "check JWT auth") — the skill will scope appropriately.
documentation
Generate or update CODING_STANDARDS.md - a comprehensive coding standards document for a project. Use this skill when asked to "document coding standards", "create style guide", "establish conventions", "generate CODING_STANDARDS.md", or any time you need to define or enforce coding practices for a team. Trigger when starting work on a new project that lacks documented standards.
development
Generate or update PROJECT_ARCHITECTURE.md - a comprehensive architectural map for AI context. Use this skill when asked to "map the architecture", "document the project structure", "onboard a new AI", "analyze the codebase", "create context for AI", or any time you need to understand a codebase's architecture. This skill is essential for new project onboarding and should trigger automatically when starting work on unfamiliar projects.
data-ai
Example TaskFlow authoring pattern for inbox triage. Use when messages need different treatment based on intent, with some routes notifying immediately, some waiting on outside answers, and others rolling into a later summary.