hoangsonww/time-of-day
> Discover when you are most active and most productive with Claude Code by bucketing sessions and events into hour-of-day and day-of-week bins from their timestamps, then flagging peak versus low-output windows. Uses the session list, per-session events, and analytics daily trends. Use when planning a schedule or deciding when to do deep work versus lighter tasks.
npx skills add https://github.com/hoangsonww/Claude-Code-Agent-Monitor --skill time-of-day
Profile activity and productivity across the hours of the day and days of the week.
The user provides: $ARGUMENTS
This may be:
cwd| Endpoint | Returns |
|----------|---------|
| GET /api/sessions?limit=500 | Sessions with started_at, ended_at, status, cwd, cost, and metadata (turn_count, total_turn_duration_ms) — primary source for hour/weekday bucketing |
| GET /api/events?session_id=X | Events with timestamp and event_type (PreToolUse, PostToolUse, Stop, Compaction, APIError, etc.) — finer-grained activity within sessions and error timing |
| GET /api/analytics | daily_sessions / daily_events (365d) and sessions_by_status for trend context and completion baselines |
Bucket sessions (by started_at) and events (by timestamp) into 24 hourly bins.
Show a text bar chart of session and event counts per hour. Identify the busiest
hours by raw volume.
For each hour bin, compute completion rate (completed / total sessions started in
that hour) and average sustained turn time
(total_turn_duration_ms / turn_count, ms → minutes). Distinguish "active" hours
(high volume) from "productive" hours (high completion + sustained turns).
Bucket the same metrics into 7 weekday bins. Table: weekday, sessions, completion
rate, avg cost, dominant model.
or fragmented short turns. Pull error timing from /api/events event types
(APIError, Compaction) to corroborate.
Suggest which hour/weekday blocks to reserve for deep work and which to use for
lighter or shallower tasks, grounded in the buckets above.
09:00 ████████ 24) for the hourlyand weekday distributions.
exclude sessions missing started_at or the focus metadata, noting the count.
Take hoangsonww/time-of-day from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.