GitHub's contribution calendar shows when you coded. But what if half those green squares weren't actually you?
I built cc-calendar — a terminal tool that renders a GitHub-style activity graph for your Claude Code sessions. Two rows: YOU (cyan) and AI (yellow). Ghost Days — when AI ran autonomously while you had zero interactive sessions — glow bright.
The output
$ npx cc-calendar
cc-calendar — AI草カレンダー
══════════════════════════════════════════════════
Jan Feb Mar
Sun ░░░░░▒░░░ Sun ░▒▒▒▓█▓█▒
Mon ░░░░░░░░░ Mon ░▒▒▒▓██▓░
Tue ░░░░░▒░░░ Tue ░▒▒▒▒▓▓▓░
Wed ░░░░▒░░░░ Wed ░▒▓▒▒▓▓▓░
Thu ░░░░░░██░ Thu ░▓▒▒▒▒▓▒░
Fri ░░░░░░█░░ Fri ░▒░█▒▒▓▒░
Sat ░░░░▒░░█░ Sat ▒░░▒▓▒▓█░
█ You █ AI █ Ghost Day ░▒▓█ = none→light→heavy
▸ Period: 2026-01-10 → 2026-03-01
▸ Active Days: 48 total
├─ Both active: 8 days
├─ You only: 0 days
└─ Ghost Days: 40 days (AI worked while you rested)
Your hours: 46.5h
AI hours: 83.3h
👻 40 Ghost Days — AI was 83% of your active days
Those bright yellow cells on the right? Ghost Days. The AI was running autonomous subagent pipelines — publishing npm packages, writing articles, updating GitHub Pages — while I was offline.
Why I built this
I already had cc-agent-load which shows the YOU/AI split as aggregate numbers. But a single ratio doesn't tell the story. You can't see when the AI was working without you, or whether it was a sustained pattern.
The contribution calendar format solves this immediately. Engineers are trained to read GitHub contribution graphs at a glance. Same interface, new dimension.
How it works
cc-calendar reads from cc-agent-load --json, which outputs session data by date:
{
"byDate": {
"2026-02-09": { "main": 0, "sub": 6.0 },
"2026-02-10": { "main": 1.5, "sub": 2.3 }
}
}
For each day:
-
main= hours in interactive sessions (you + AI responding to you) -
sub= hours in autonomous subagent sessions (AI running without you)
Ghost Day = main === 0 && sub > 0.
The calendar renders 26 weeks with GitHub-style block characters:
-
░light (< 1h) -
▒medium (1-4h) -
▓heavy (4h+) -
█intense (4h+)
Zero dependencies
No npm packages. Just Node.js 18+. Reads ~/.claude/projects/ transcript files directly.
npx cc-calendar
What 40 Ghost Days means
Out of 48 active days in my log, 40 were AI-only. That's 83%.
The pattern is: I have an interactive session, set something in motion, then go to sleep. The AI keeps running — finishing tasks, publishing packages, updating docs. Next morning I check the results.
It's not a problem to fix. It's the intended design. But seeing it visualized makes it concrete.
The 8 "both active" days were when I was in the middle of something large and the AI was running parallel tasks.
The 0 "you only" days means I never worked without AI support. Every interactive session had some autonomous component.
Related tools
This tool is part of the cc-toolkit collection:
-
cc-agent-load— source data (run this first) -
cc-ghost-log— see git commits from Ghost Days -
cc-session-stats— total usage overview
All 106 free tools: cc-toolkit
Is your Claude Code setup actually safe? Run npx cc-health-check — a free 20-point diagnostic. Score below 80? The Claude Code Ops Kit fixes everything in one command.
GitHub: cc-calendar
What does your calendar look like?
Top comments (0)