Skip to content

adamXbot/ClaudeWatch

Repository files navigation

ClaudeWatch icon

ClaudeWatch

See what Claude Code has been up to on your machine, and filter it down to keep track

CI Latest release macOS 13+ Swift 5.9 Auto-update via Sparkle


A lightweight macOS menu-bar app that shows the latest system-touching actions Claude Code and Codex perform on your machine — shell commands, file writes/edits, and network fetches — so you can see at a glance what the AI is actually doing.

Each entry links back to the thread that issued it: open the full conversation in your browser (scrolled to the exact command), or resume that session in Claude Code / Codex.

It is a read-only history tool. It only ever reads your local Claude Code and Codex transcripts under ~/.claude/projects and ~/.codex, and makes no network connections.

What it shows

Tool Shown as
Bash the shell command + its description
Write the file path written + size
Edit / MultiEdit the file path edited
NotebookEdit the notebook path + edit mode
WebFetch the URL fetched
WebSearch the search query

Read-only tools (Read/Grep/Glob/Task/…) are deliberately excluded — this is about what the AI does, not what it looks at. Subagent / workflow activity is included and tagged, and can be hidden with one toggle.

How it works

  • Watches every *.jsonl transcript under ~/.claude/projects (main sessions and nested subagent runs), plus Codex sessions under ~/.codex/sessions and ~/.codex/archived_sessions, polling once a second and reading only newly-appended lines.
  • Each Claude tool_use of a system-touching tool becomes a row. The transcript envelope supplies the sessionId (the thread), cwd (the project), timestamp, git branch, and whether it came from a subagent.
  • Each Codex exec_command, apply_patch, and write_stdin call becomes a row. Session metadata supplies the project and thread.

Actions per row

  • Click / 🌐 — render the full thread to HTML and open it in your browser, scrolled to that command (subagent rows open the subagent's own transcript).
  • ⌨️ terminal — open Terminal in the project and resume the source session.
  • 📋 copy — copy the command. Right-click for more (copy session id, reveal transcript).

Plus search, per-kind filters, a hide-subagents toggle, and pause.

Install

Download the latest ClaudeWatch.zip from the Releases page, unzip, and drag ClaudeWatch.app to /Applications. Two icons appear in your menu bar: one for Claude activity and one for Codex activity (no Dock icon).

Signed + notarized releases open normally. For an unsigned build, right-click → Open the first time, or allow it under System Settings → Privacy & Security.

To launch at login: System Settings → General → Login Items → +.

Build from source

Requires macOS 13+ and a Swift toolchain (Xcode or Command Line Tools).

./build.sh            # produces ClaudeWatch.app
open ClaudeWatch.app

Project layout

Sources/ClaudeWatchCore/   # pure, headless logic — unit-tested
  EventKind, CommandEvent, TranscriptParser, EventScanner,
  TranscriptStore, TranscriptHTMLRenderer, RelativeTime
Sources/ClaudeWatch/       # the SwiftUI menu-bar app
  ClaudeWatchApp, MenuContentView, CommandRowView, Actions, main
Tests/ClaudeWatchTests/    # XCTest coverage for the Core
swift test            # run the Core test suite

Headless inspection

The same binary can dump the latest parsed actions as text — handy for verifying parsing without the UI:

swift run ClaudeWatch --dump

Notes

  • "Resume in Claude Code" requires the claude CLI on your PATH.
  • No telemetry, no network, no data leaves your machine.

About

Menu-bar history of the system-touching actions Claude Code runs — see what the AI does on your machine, with links back to the issuing thread.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors