AgentHours — AI Client Time Tracker
Alpha (preview). AgentHours is early software under active development.
It records and exports real time today, but expect rough edges, and check
exported hours before you bill them. Bug reports and feedback are welcome —
see Contributing.
Automatic billable time tracking for the AI era. AgentHours reconstructs
your billable time across VS Code, Claude Code, and OpenAI Codex CLI —
hands-on coding, autonomous agent runs, token usage, and AI cost, organised by
client and ready to export. No timers, no setup, no settings.
- Easy to use. Install it and recording starts. Every repo you touch
records under its own name; bind a repo or a whole GitHub org to a client
with one click when you're ready to bill.
- Accurate capture. Hands-on time is focus-gated and idle-aware; agent
time is reconstructed from real prompt→stop turns. Time spent working
alongside an agent counts as hands-on — never double-billed.
- Built for freelancers, consultants, and developers who work across
projects. Switch repos all day; every client's hours stay separate and
defensible.
- Claude Code & Codex CLI support. One click installs the lifecycle hooks
for every agent CLI on your machine.
How it works
- Install — recording starts. The status-bar mark pulses red while
hands-on time is credited; the AgentHours activity-bar view shows your
live session and the day's client / repo / hours.
- Set up agent hooks — click ⚠ Set up in the sidebar to record
Claude Code and Codex CLI runs as autonomous time and token usage.
AI cost is priced for Claude Code; Codex tokens are recorded but not priced,
because no published rate exists to price them honestly.
- Set client (optional) — from the session card, or type it straight
into any row of the day table.
- Export billable time and AI costs as CSV or JSON. Delete anything that
shouldn't count — your edits survive reconstruction.
Privacy — local-first, collect nothing by default
No source code, prompts, keystrokes, clipboard, or terminal output — ever.
Signals record metadata only (workspace, repo, timings, token counts), stored
in an encrypted local SQLite database; the key lives in VS Code
SecretStorage. Nothing leaves your machine.
Commands
| Command |
What it does |
| AgentHours: Set Client |
Bill the current repo (or its whole org) to a client |
| AgentHours: Install Agent Hooks |
One-click hook setup for every detected agent CLI |
| AgentHours: Start Private Mode |
Pause recording (also the Pause button in the sidebar) |
| AgentHours: Show AI Usage |
Token usage and estimated cost by project |
| AgentHours: Export Timesheet |
Write billable entries to CSV / JSON |
Open source (MIT), by Adam Chan · Cavalry Collective.
Issues and
pull requests welcome — see CONTRIBUTING.md and
DEVELOPMENT.md.