Skip to main content

Local web viewer for AI agent sessions

Project description

agentsview

Browse, search, and track costs across all your AI coding agents. One binary, no accounts, everything local.

Analytics dashboard

Install

# macOS / Linux
curl -fsSL https://agentsview.io/install.sh | bash

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://agentsview.io/install.ps1 | iex"

Or download the desktop app (macOS / Windows) from GitHub Releases.

Or run the published Docker image:

docker run --rm -p 127.0.0.1:8080:8080 \
  -v agentsview-data:/data \
  -v "$HOME/.claude/projects:/agents/claude:ro" \
  -e CLAUDE_PROJECTS_DIR=/agents/claude \
  ghcr.io/wesm/agentsview:latest

Quick Start

agentsview serve           # start server, open web UI
agentsview usage daily     # print daily cost summary

On first run, agentsview discovers sessions from every supported agent on your machine, syncs them into a local SQLite database, and opens a web UI at http://127.0.0.1:8080.

Docker

The container image defaults to local agentsview serve. Set PG_SERVE=1 to switch the startup command to agentsview pg serve instead.

docker-compose.prod.yaml is included as a production example:

docker compose -f docker-compose.prod.yaml up -d

The included compose file persists the agentsview data directory in a named volume and mounts Claude, Codex, and OpenCode session roots read-only. The container runs as root, so prefer a named volume for /data over a host bind mount; if you do bind-mount, pre-create the directory with the desired ownership to avoid root-owned files in your home directory.

The examples publish the UI on loopback only (127.0.0.1). If you need to expose it beyond localhost, enable --require-auth and publish the port intentionally.

Important: a containerized agentsview instance can only discover agent sessions from directories you explicitly mount into the container. If you do not mount an agent's session directory and point the matching env var at it, that agent will not appear in the UI.

Example PostgreSQL-backed startup:

docker run --rm -p 127.0.0.1:8080:8080 \
  -e PG_SERVE=1 \
  -e AGENTSVIEW_PG_URL='postgres://user:password@postgres.example.com:5432/agentsview?sslmode=require' \
  ghcr.io/wesm/agentsview:latest

Token Usage and Cost Tracking

agentsview usage is a fast, local replacement for ccusage and similar tools. It tracks token consumption and compute costs across all your coding agents -- not just Claude Code. Because session data is already indexed in SQLite, queries are over 100x faster than tools that re-parse raw session files on every run.

# Daily cost summary (default: last 30 days)
agentsview usage daily

# Per-model breakdown
agentsview usage daily --breakdown

# Filter by agent and date range
agentsview usage daily --agent claude --since 2026-04-01

# One-line summary for shell prompts / status bars
agentsview usage daily --all --json
agentsview usage statusline

Features:

  • Automatic pricing via LiteLLM rates (with offline fallback)
  • Prompt-caching-aware cost calculation (cache creation / read tokens)
  • Per-model breakdown with --breakdown
  • Date filtering (--since, --until, --all), agent filtering (--agent)
  • JSON output (--json) for scripting
  • Timezone-aware date bucketing (--timezone)
  • Works standalone -- no server required, just run the command

Session Stats

agentsview stats emits window-scoped analytics over recorded sessions: totals, archetypes (automation vs. quick/standard/deep/marathon), distributions for session duration, user-message count, peak context, and tools-per-turn, plus cache economics, tool/model/agent mix, and a temporal hourly breakdown. The --format json output follows a versioned v1 schema (schema_version: 1) suitable for downstream consumers.

# Human-readable summary over the last 28 days
agentsview stats

# Machine-readable JSON over a fixed date range
agentsview stats --format json --since 2026-04-01 --until 2026-04-15

# Restrict to one agent and inspect the schema
agentsview stats --format json --agent claude | jq '.schema_version'

Session Browser

Dashboard Session viewer
Dashboard Session viewer
Search Activity heatmap
Search Heatmap
  • Full-text search across all message content (FTS5)
  • Token usage and cost dashboard -- per-session and per-model cost breakdowns, daily spend charts, all in the web UI
  • Analytics dashboard -- activity heatmaps, tool usage, velocity metrics, project breakdowns
  • Live updates via SSE as active sessions receive new messages
  • Keyboard-first navigation (j/k/[/], Cmd+K search, ? for all shortcuts)
  • Export sessions as HTML or publish to GitHub Gist

Supported Agents

agentsview auto-discovers sessions from all of these:

Agent Session Directory
Claude Code ~/.claude/projects/
Codex ~/.codex/sessions/
Copilot CLI ~/.copilot/
Gemini CLI ~/.gemini/
OpenCode ~/.local/share/opencode/
OpenHands CLI ~/.openhands/conversations/
Cursor ~/.cursor/projects/
Amp ~/.local/share/amp/threads/
iFlow ~/.iflow/projects/
VSCode Copilot ~/Library/Application Support/Code/User/ (macOS)
Pi ~/.pi/agent/sessions/
OpenClaw ~/.openclaw/agents/
Kimi ~/.kimi/sessions/
Kiro CLI ~/.kiro/sessions/cli/
Kiro IDE ~/Library/Application Support/Kiro/ (macOS)
Cortex Code ~/.snowflake/cortex/conversations/

Each directory can be overridden with an environment variable. See the configuration docs for details.

PostgreSQL Sync

Push session data to a shared PostgreSQL instance for team dashboards:

agentsview pg push       # push local data to PG
agentsview pg serve      # serve web UI from PG (read-only)

See PostgreSQL docs for setup and configuration.

Privacy

No telemetry, no analytics, no accounts. All data stays on your machine. The server binds to 127.0.0.1 by default. The only outbound request is an optional update check on startup (disable with --no-update-check).

Documentation

Full docs at agentsview.io: Quick Start -- Usage Guide -- CLI Reference -- Configuration -- Architecture


Development

Requires Go 1.26+ (CGO), Node.js 22+.

make dev            # Go server (dev mode)
make frontend-dev   # Vite dev server (run alongside make dev)
make build          # build binary with embedded frontend
make install        # install to ~/.local/bin
make test           # Go tests (CGO_ENABLED=1 -tags fts5)
make lint           # golangci-lint + NilAway
make nilaway        # NilAway through custom golangci-lint
make e2e            # Playwright E2E tests

Pre-commit hooks via prek: run make lint-tools and make install-hooks after cloning (requires prek and uv).

Project Layout

cmd/agentsview/     CLI entrypoint
internal/           Go packages (config, db, parser, server, sync, postgres)
frontend/           Svelte 5 SPA (Vite, TypeScript)
desktop/            Tauri desktop wrapper

Acknowledgements

Inspired by claude-history-tool by Andy Fischer and claude-code-transcripts by Simon Willison.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

agentsview-0.27.0-py3-none-win_amd64.whl (8.1 MB view details)

Uploaded Python 3Windows x86-64

agentsview-0.27.0-py3-none-manylinux_2_28_x86_64.whl (7.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

agentsview-0.27.0-py3-none-manylinux_2_28_aarch64.whl (7.2 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

agentsview-0.27.0-py3-none-macosx_11_0_x86_64.whl (8.0 MB view details)

Uploaded Python 3macOS 11.0+ x86-64

agentsview-0.27.0-py3-none-macosx_11_0_arm64.whl (7.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file agentsview-0.27.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: agentsview-0.27.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 8.1 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for agentsview-0.27.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 58f2d2385f3efcb7725f53c17faf62773b6b164d069ebe6f5286efa167f3460a
MD5 2c1da5e715d77549d4997160c76e750e
BLAKE2b-256 f98c81030338d80b00c715cfae5648bc955243badad2ff0e5f10b4372f26720e

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentsview-0.27.0-py3-none-win_amd64.whl:

Publisher: release.yml on wesm/agentsview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentsview-0.27.0-py3-none-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for agentsview-0.27.0-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c9f18c24cbc6b019a81520656f4a11ea0ac636c03b7d4c19797fd519eb0ff038
MD5 6fe539f310620b601bf0919521f2c017
BLAKE2b-256 f0a9ac3ec45676f397790149608c892090eefec4f6c950a27f5a736bdae6d247

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentsview-0.27.0-py3-none-manylinux_2_28_x86_64.whl:

Publisher: release.yml on wesm/agentsview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentsview-0.27.0-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for agentsview-0.27.0-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aebccc278db38d63c7cd415d052d08eef542723e7f74421c2368e65e576df6bf
MD5 d2e2b3d88597609fb5780c1c85e22200
BLAKE2b-256 6c9626a2f1919d2da6e40a350ce74fec3f667d9c29dd9888305b49be03ebf540

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentsview-0.27.0-py3-none-manylinux_2_28_aarch64.whl:

Publisher: release.yml on wesm/agentsview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentsview-0.27.0-py3-none-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for agentsview-0.27.0-py3-none-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 7ea1e2e06b2dc953a545a135bc4bccd69fc85e5a03e9d32e4e1e1453ce52f2eb
MD5 927bdfc7b789135082a2d5c2040d5eb5
BLAKE2b-256 8d1b9f743fdc317568cdf43acc24046871400fa0be98c6e795dcd0924b734251

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentsview-0.27.0-py3-none-macosx_11_0_x86_64.whl:

Publisher: release.yml on wesm/agentsview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentsview-0.27.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for agentsview-0.27.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3efaa4d265bd340cddfb070f78b985b4ebb852414c6fd56314d41a1c874b19db
MD5 049e40296eda36997af44664fc9238eb
BLAKE2b-256 e2272e39ccfca5f30940024aefd5869546b68ec02f8e708a11c89b818faaec07

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentsview-0.27.0-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on wesm/agentsview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page