Codex time tracker Codex CLI time tracking, turned into hours per client.
TimeUno watches your Codex CLI sessions as they run, tells working from waiting, and turns that into hours you can put on a timesheet, project by project.
Start your 14-day free trial 14-day free trial
Where Codex CLI keeps its sessions, and what TimeUno sends
Codex CLI writes one rollout file per session, under ~/.codex/sessions/YYYY/MM/DD/rollout-*.jsonl. TimeUno watches that folder and reads the file as it grows.
| Sends | Never leaves your device |
|---|---|
| When a session starts and ends | Your prompts |
| Whether a turn came from you or the agent | Codex’s answers |
| The model | Your code |
| The working folder | Token counts or cost |
Existing history is not back-counted: when TimeUno sees a rollout file for the first time, only activity from that point on is tracked.
Working or waiting on you
A Codex CLI session that is still writing to its rollout file is working. Once the last entry is an agent turn, TimeUno marks it as waiting for you, usually after a few minutes without further activity. You see both states on the same timeline as your own work, so a stretch where you review code while Codex runs a refactor in the background shows up as exactly that.
From agent time to billable hours per client
TimeUno picks the project from the session’s working folder, the same way it does for your own work: package.json, Cargo.toml, go.mod, pyproject.toml or the folder name. The Projects page then splits each project into your time and Codex CLI time for the week.
For a client timesheet, pick a period and a project, add an optional client name, and TimeUno shows your total hours next to Codex’s time and an AI-contribution percentage before you export. The CSV you download blends both into one number per day, since that is what you bill a client for.

Parallel sessions stay apart
Each Codex CLI session file is its own row with its own project. Run two terminals on two different client repos at the same time, and TimeUno keeps their time apart on the timeline and on your timesheets, instead of folding both into one combined total.
Codex CLI on a remote server
If you run Codex CLI over SSH on a Linux server, the desktop app on your laptop cannot see that session. The headless agent can: install it on the server with one command, and it reads the same rollout files there, on the same timeline as your laptop.
See it next to every other AI tool
This page covers Codex CLI on its own. For the full picture across Codex CLI, Claude Code, Cursor and the rest, and how TimeUno compares with WakaTime, see the AI time tracker overview.
Updated 19 October 2026
Questions people ask
Where does Codex CLI store its sessions?
In rollout files under ~/.codex/sessions, organised by year, month and day. TimeUno watches that folder and reads each session as it writes.
Do my Codex prompts leave my device?
No. TimeUno sends the message type, the working folder and the model from the rollout file. Your prompts, Codex's answers and your code never leave your device.
Does it show Codex token usage or cost?
No. TimeUno reads whether a turn came from you or the agent and the working folder, which is enough to tell working from waiting, but Codex's rollout logs are not read for token counts or cost.
Can I track Codex CLI on a remote server?
Yes. Install the headless agent on the Linux server you SSH into, and it reads the same rollout files there, on the same timeline as your laptop.