Install
brew install ai-observerInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →AI Observer
Unified local observability for AI coding assistants
AI Observer is a self-hosted, single-binary, OpenTelemetry-compatible observability backend designed specifically for monitoring local AI coding tools like Claude Code, Gemini CLI, OpenAI Codex CLI, GitHub Copilot, and OpenCode.
Track token usage, costs, API latency, error rates, and session activity across all your AI coding assistants in one unified dashboard—with real-time updates and zero external dependencies.
Why AI Observer?
AI coding assistants are becoming essential development tools, but understanding their behavior and costs remains a challenge:
- Visibility: See exactly how your AI tools are performing across sessions
- Cost tracking: Monitor token usage and API calls to understand spending
- Debugging: Trace errors and slow responses back to specific interactions
- Privacy: Keep your telemetry data local—no third-party services required
Features
- Multi-tool support — Works with Claude Code, Gemini CLI, OpenAI Codex CLI, GitHub Copilot, and OpenCode
- Real-time dashboard — Live updates via WebSocket as telemetry arrives
- Persistent dashboards — Drag-and-drop dashboard builder with saved widgets and multiple widget types
- File watcher mode — Watch Claude, Codex, and Gemini session files in real-time, no OTLP configuration needed
- Historical import — Import past Claude, Codex, and Gemini sessions from local JSONL/JSON files with cost calculation
- Cost tracking — Embedded pricing data across Claude, Codex/OpenAI, Gemini, and GitHub Copilot model aliases, plus native OpenCode plugin cost metrics
- Fast analytics — DuckDB-powered storage for instant queries on large datasets
- Single binary — One ~54MB executable with embedded frontend—no external dependencies
- Multi-arch Docker — Ready-to-run ~97MB images for
linux/amd64andlinux/arm64 - OTLP-native — Standard OpenTelemetry Protocol ingestion (HTTP/JSON and HTTP/Protobuf)
Documentation
- Import Command — Import historical session data from local AI tool files
- Export Command — Export telemetry data to Parquet files for archiving and sharing
- Watch Command — Watch local session files and import incrementally in real-time
- Pricing System — Cost calculation for Claude, Codex/OpenAI, Gemini, and GitHub Copilot models; OpenCode costs are ingested from the OTEL plugin
Screenshots
Dashboard
Metrics View
Logs View
Traces View
Quick Start
Using Docker (Recommended)
docker run -d \
-p 8080:8080 \
-p 4318:4318 \
-v ai-observer-data:/app/data \
--name ai-observer \
tobilg/ai-observer:latest
Dashboard: http://localhost:8080
Using a local directory for data persistence:
# Create a local data directory
mkdir -p ./ai-observer-data
# Run with local volume mount
docker run -d \
-p 8080:8080 \
-p 4318:4318 \
-v $(pwd)/ai-observer-data:/app/data \
-e AI_OBSERVER_DATABASE_PATH=/app/data/ai-observer.duckdb \
--name ai-observer \
tobilg/ai-observer:latest
This stores the DuckDB database in your local ./ai-observer-data directory, making it easy to backup or inspect.
Using Homebrew (macOS Apple Silicon)
brew tap tobilg/ai-observer
brew install ai-observer
ai-observer
Using Binary
Similar plugs
CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
Bash is all you need - A nano claude code–like 「agent harness」, built from 0 to 1
Documented system prompts from Anthropic - Claude Fable 5.1, Opus 5.5, Claude Design, Claude Code. OpenAI - ChatGPT GPT-6-Astra, Codex. Google - Gemini 3.8 Flash, 3.1 Pro,…
Wrap Antigravity, ChatGPT Codex, Claude Code, Grok Build, Muse Code, Devin as an OpenAI/Gemini/Claude/Codex compatible API service, allowing you to enjoy the free Gemini…