66
77![ Status: MVP] ( https://img.shields.io/badge/status-MVP-f2c94c )
88![ Local first] ( https://img.shields.io/badge/local--first-yes-2f855a )
9- ![ Platform: Windows first ] ( https://img.shields.io/badge/platform-Windows%20first -0078d4 )
9+ ![ Platform: Cross-platform ] ( https://img.shields.io/badge/platform-cross--platform -0078d4 )
1010![ Backend: Go] ( https://img.shields.io/badge/backend-Go-00ADD8 )
1111![ Frontend: Vue 3] ( https://img.shields.io/badge/frontend-Vue%203-42b883 )
1212![ License: Apache-2.0] ( https://img.shields.io/badge/license-Apache--2.0-blue )
1313
14- AgentMeter is a local-first dashboard for understanding Codex session usage:
14+ AgentMeter is a local-first dashboard for understanding coding-agent session usage:
1515tokens, estimated cost, timing, session history, and tool-call behavior.
1616
17- It reads local Codex session files, indexes them into SQLite, and shows the data
17+ It reads local agent JSONL session files, indexes them into SQLite, and shows the data
1818in a private desktop UI. No proxy, no cloud service, no telemetry.
1919
2020## Why AgentMeter
2121
2222Coding agents can generate a lot of useful local session data, but that data is
23- hard to inspect directly. AgentMeter turns Codex JSONL sessions into answers you
23+ hard to inspect directly. AgentMeter turns local JSONL sessions into answers you
2424can actually use:
2525
2626- How many sessions did I run?
@@ -33,6 +33,8 @@ can actually use:
3333## Features
3434
3535- Overview dashboard with sessions, tokens, estimated cost, daily usage, and model usage.
36+ - Multiple local source roots, with Codex, Claude Code, and generic JSONL detection.
37+ - Agent-level usage grouping for developers who run several coding agents side by side.
3638- Searchable session history with parse status and raw source traceability.
3739- Session detail timeline with model calls, tool calls, metadata, and source paths.
3840- Tool-call analytics with call counts, success/failure counts, and durations.
@@ -50,16 +52,19 @@ AgentMeter is designed to stay local:
5052- Does not require a cloud account.
5153- Stores normalized data in a local SQLite database.
5254
53- The default database path is :
55+ The default database path follows the host OS :
5456
5557``` text
56- %LOCALAPPDATA%\AgentMeter\agentmeter.sqlite
58+ Windows: %LOCALAPPDATA%\AgentMeter\agentmeter.sqlite
59+ macOS: ~/Library/Application Support/AgentMeter/agentmeter.sqlite
60+ Linux: $XDG_DATA_HOME/AgentMeter/agentmeter.sqlite or ~/.local/share/AgentMeter/agentmeter.sqlite
5761```
5862
59- The default Codex source path is :
63+ Default source roots are detected from local agent homes when they exist :
6064
6165``` text
62- %USERPROFILE%\.codex
66+ ~/.codex
67+ ~/.claude
6368```
6469
6570## Quick Start
@@ -83,9 +88,9 @@ source files change, starts AgentMeter, and opens:
8388http://127.0.0.1:34115
8489```
8590
86- On first launch, click ** Index Now** in the app. AgentMeter defaults to
87- ` %USERPROFILE%\.codex ` , so no source path setup is required unless your Codex
88- sessions live somewhere else .
91+ On first launch, click ** Index Now** in the app. AgentMeter defaults to detected
92+ local agent homes such as ` ~/.codex ` and ` ~/.claude ` . In ** Settings ** , enter one
93+ source root per line when you use multiple agents or keep session logs elsewhere .
8994
9095Build the frontend and start local HTTP mode manually:
9196
@@ -114,21 +119,22 @@ wails dev
114119## How It Works
115120
116121``` text
117- Codex JSONL -> scanner/parser -> SQLite -> Go query service -> Vue dashboard
122+ Agent JSONL -> scanner/parser -> SQLite -> Go query service -> Vue dashboard
118123```
119124
120125When the source path is a Codex home directory, AgentMeter scans ` sessions\ `
121126first and then ` archived_sessions\ ` , keeping the active copy when both contain
122- the same relative JSONL path. A direct directory of saved JSONL output is also
123- supported.
127+ the same relative JSONL path. When the source path is a Claude Code home,
128+ AgentMeter scans ` projects/ ` . A direct directory of saved JSONL output is also
129+ supported through the generic JSONL adapter.
124130
125131## Current Status
126132
127- AgentMeter is currently an MVP focused on Codex on Windows . The repository
133+ AgentMeter is currently an MVP for local coding-agent JSONL usage . The repository
128134already includes:
129135
130136- Go backend with SQLite migrations and local app configuration.
131- - Codex JSONL discovery, parsing, normalization, and incremental indexing.
137+ - Codex, Claude Code, and generic JSONL discovery, parsing, normalization, and incremental indexing.
132138- Normalized sessions, events, token usage, model calls, and tool calls.
133139- Vue 3 + TypeScript frontend using Ant Design Vue and ECharts.
134140- MVP screens for Overview, Sessions, Session Detail, Tools, and Settings.
@@ -146,8 +152,7 @@ go test ./...
146152
147153## Roadmap
148154
149- Planned directions include packaged Windows builds, macOS/Linux support, more
150- coding-agent adapters, export formats, project grouping, custom pricing, and
155+ Planned directions include packaged builds, more coding-agent adapters, export formats, project grouping, custom pricing, and
151156richer timeline views.
152157
153158See [ Roadmap] ( docs/roadmap.md ) for details.
@@ -163,4 +168,4 @@ See [Roadmap](docs/roadmap.md) for details.
163168## Contributing
164169
165170Issues and pull requests are welcome, especially for parser edge cases, pricing
166- updates, Windows packaging, and adapters for other coding agents.
171+ updates, packaging, and adapters for other coding agents.
0 commit comments