You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A terminal UI, macOS menu bar app, and HTTP API for monitoring all your coding agents — [Claude Code](https://claude.ai/code), [Cursor](https://cursor.com/), [pi](https://github.com/badlogic/pi-mono), and [OpenCode](https://opencode.ai/) — from a single place. No lock-in, no server, purely observational.
7
+
A terminal UI, macOS menu bar app, and HTTP API for monitoring all your coding agents — [Claude Code](https://claude.ai/code), [Cursor](https://cursor.com/), [Codex](https://developers.openai.com/codex/), [pi](https://github.com/badlogic/pi-mono), and [OpenCode](https://opencode.ai/) — from a single place. No lock-in, no server, purely observational.
8
8
9
9
Inspired by [lazygit](https://github.com/jesseduffield/lazygit), [lazyworktree](https://github.com/chmouel/lazyworktree), and [pixel-agents](https://github.com/pablodelucca/pixel-agents).
10
10
@@ -33,10 +33,11 @@ lazyagent watches session data from coding agents to determine what each session
33
33
-**Claude Code CLI** — reads JSONL from `~/.claude/projects/*/`
34
34
-**Claude Code Desktop** — same JSONL files, enriched with session metadata (title, permissions) from `~/Library/Application Support/Claude/claude-code-sessions/`
35
35
-**Cursor** — reads SQLite from `~/Library/Application Support/Cursor/User/globalStorage/state.vscdb`
36
+
-**Codex CLI** — reads JSONL from `~/.codex/sessions/YYYY/MM/DD/*.jsonl`
36
37
-**pi coding agent** — reads JSONL from `~/.pi/agent/sessions/*/`
37
38
-**OpenCode** — reads SQLite from `~/.local/share/opencode/opencode.db`
38
39
39
-
Use `--agent claude`, `--agent pi`, `--agent opencode`, `--agent cursor`, or `--agent all` (default) to control which agents are monitored. Agents can also be enabled/disabled in the config file. Pi sessions are marked with a **π** prefix, Cursor with **C**, OpenCode with **O**, and Desktop sessions with a **D** prefix in the session list.
40
+
Use `--agent claude`, `--agent pi`, `--agent opencode`, `--agent cursor`, `--agent codex`, or `--agent all` (default) to control which agents are monitored. Agents can also be enabled/disabled in the config file. Pi sessions are marked with a **π** prefix, Cursor with **C**, Codex with **X**, OpenCode with **O**, and Desktop sessions with a **D** prefix in the session list.
40
41
41
42
From the JSONL stream it detects activity states with color-coded labels:
42
43
@@ -119,6 +120,7 @@ lazyagent --agent claude Monitor only Claude Code sessions
119
120
lazyagent --agent pi Monitor only pi coding agent sessions
120
121
lazyagent --agent opencode Monitor only OpenCode sessions
121
122
lazyagent --agent cursor Monitor only Cursor sessions
123
+
lazyagent --agent codex Monitor only Codex CLI sessions
122
124
lazyagent --agent all Monitor all agents (default)
123
125
lazyagent --api Start the HTTP API (http://127.0.0.1:7421)
124
126
lazyagent --api --host :8080 Start the HTTP API on a custom address
@@ -234,6 +236,7 @@ lazyagent reads `~/.config/lazyagent/config.json` (created automatically with de
0 commit comments