Files
wehub-resource-sync f99010fae1
CI / lint (push) Failing after 1s
CI / frontend (push) Failing after 1s
CI / scripts (push) Failing after 1s
CI / Go Test (ubuntu-latest) (push) Failing after 0s
CI / frontend-node-25 (push) Failing after 1s
CI / docs (push) Failing after 0s
CI / coverage (push) Failing after 0s
CI / e2e (push) Failing after 0s
Docker / build-and-push (push) Failing after 1s
CI / integration (push) Failing after 4m43s
CI / Go Test (windows-latest) (push) Has been cancelled
CI / Desktop Unit Tests (Windows) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux (arm64)) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Windows) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (aarch64)) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (x86_64)) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:30:36 +08:00

128 KiB
Raw Permalink Blame History

title, description
title description
Changelog Release history for AgentsView

0.37.5

2026-07-09

New features

  • Prefer richer agy-reader trajectory sidecars when parsing Antigravity IDE sessions, falling back to the existing heuristic decode when a sidecar is missing, malformed, or does not cover the session's database steps.

Improvements

  • Speed up configured HTTP full remote syncs by ingesting local and remote sessions through one batched temporary-database rebuild with FTS suspended, then rebuilding search once and swapping atomically. --full now reparses every session without retransferring unchanged mirror files from manifest-capable spokes; older HTTP-capable spokes retain the full-archive compatibility fallback.

Bug fixes

  • Identify locally ingested sessions by the machine's hostname instead of the ambiguous local label, and keep full-rebuild safety independent when a configured remote has the same hostname as the collector.

  • Remove recommended-plugin context injected into Codex sessions from parsed transcripts so it no longer appears as user-authored content.

  • Include overnight session activity in date-filtered results by matching dates against session activity windows instead of only session start dates.

Acknowledgements

  • Thanks to Matthew Jacobs for agy-reader trajectory sidecar support in Antigravity IDE sessions.
  • Thanks to Wes McKinney for Codex recommended-plugin filtering, overnight date-filter support, and release documentation.

0.37.4

2026-07-09

New features

  • Add incremental HTTP remote sync backed by a persistent per-host mirror. After the initial archive download, the collector compares a remote manifest with its mirror and requests only changed files when fewer than half of the manifest files need fetching. Deleted remote files are removed from the mirror without deleting sessions already stored in the local archive.

Improvements

  • Include GPT-5.6 model pricing for the base alias and the Sol, Terra, and Luna variants in the embedded fallback catalog, so fresh installs and offline usage reports can estimate their costs without a network fetch.
  • Explain default session list exclusions on stderr when one-shot or automated sessions are hidden, including the number in each category and the flags that include them. Structured stdout remains unchanged for scripts.

Acknowledgements

  • Thanks to Wes McKinney for incremental HTTP remote sync, GPT-5.6 fallback pricing, and release documentation.
  • Thanks to Marius van Niekerk for making the session list default exclusions visible.

0.37.3

2026-07-09

Bug fixes

  • Restore optimized SQLite builds for Linux release binaries and Docker images by preserving Go's default -O2 -g cgo flags when overriding CGO_CFLAGS, improving full-text search and query performance in those artifacts.

Acknowledgements

  • Thanks to Wes McKinney for restoring optimized release and Docker SQLite builds.

0.37.2

2026-07-08

Improvements

  • Speed up periodic syncs for unchanged OpenCode-family SQLite containers. Once a full pass has verified every session in a shared OpenCode-format SQLite database, later idle passes can skip the container before per-session fingerprinting by comparing SQLite write markers for the database and WAL.
  • Reduce heap retention after large sync backfills by periodically returning memory to the operating system while archived signal and secret recomputations walk large message and tool-result payloads.

Bug fixes

  • Show OpenCode tool-call skill names in tool analytics by extracting the dedicated skill tool input and applying the existing SKILL.md inference heuristics to OpenCode read and shell calls.
  • Shut down watcher-triggered syncs cleanly by threading the server run context through changed-path syncs, prioritizing watcher stop signals, and making unwatched-directory polling exit on cancellation.
  • Fix desktop app icon spacing by insetting the shared icon artwork and regenerating the checked-in PNG, ICNS, and ICO assets.

Acknowledgements

  • Thanks to Marius van Niekerk for speeding up unchanged OpenCode-family SQLite container syncs.
  • Thanks to Rod Boev for OpenCode skill-name extraction and large-backfill memory reductions.
  • Thanks to Wes McKinney for watcher shutdown fixes, desktop icon spacing, and release documentation.

0.37.1

2026-07-08

New features

  • Add semantic and hybrid search backed by an opt-in local embeddings index. AgentsView now embeds user-message units and grouped assistant runs, supports agentsview embeddings build|list|activate|retire, adds session search --semantic and --hybrid, and returns conversation-unit citation ranges with lineage metadata for sidechain and subagent hits.
  • Add content-free session summary export with a v1 JSON/NDJSON contract. agentsview export sessions emits session metadata, usage totals, pricing provenance, project identity, stable cursors, and reset errors without transcript text.
  • Add single-session insight analysis from the session header. Session analysis uses the existing insight-generation pipeline with agent_analysis plus session_id, builds a prompt from that session's messages, timing, and usage, and stores the result with the other insights.
  • Add Posit Assistant, Windsurf workspace chat, Qoder, and ZCode session support. These providers cover Posit Assistant workspace conversations, Windsurf workspaceStorage chat state, Qoder project transcripts and sidecars, and ZCode's local SQLite session database.
  • Add Korean (ko) localization and register it alongside English, Simplified Chinese, and Traditional Chinese.
  • Render Mermaid fenced code blocks in markdown messages while keeping the source readable if the Mermaid runtime cannot load.
  • Show session context and detailed token breakdowns in usage views, including session-level output-token and peak-context details.
  • Add copy buttons for tool blocks, with separate affordances for tool input and output content.
  • Add worktree layout mappings in Settings. Worktree mappings now support both explicit path-prefix mappings and the repo_dot_worktrees layout for paths like <prefix>/<repo>.worktrees/<branch>/....
  • Add sync_include_cwd_prefixes to config.toml so local sync can ingest only sessions whose working directory falls under an allowed path prefix.

Improvements

  • Render CLI session search results as an aligned table for the default no-context human output, with terminal-width-aware truncation.
  • Reduce push sync churn by ignoring volatile stat fields when deciding PostgreSQL push candidates and by lowering DuckDB write amplification.
  • Keep unchanged OpenCode-family container sessions out of sync updates, so container rows that did not change no longer churn during sync.

Bug fixes

  • Parse Codex custom tool calls correctly so custom tool invocations are preserved as tool blocks instead of falling through malformed paths.
  • Apply config.toml port settings to the active server config before startup, so configured ports affect the runtime server just like CLI flags.
  • Preserve calendar range picker selections after range changes in the frontend.
  • Apply agent exclusions consistently in usage filters, including Usage API and frontend paths that previously missed the exclusion set.
  • Include subagent sessions in activity report cost totals, matching the session rows that contribute to the report.
  • Map OhMyPi parentSession headers to parent_session_id, preserving parent-child lineage for OMP transcripts.
  • Skip local git discovery for sessions from other machines, avoiding host-local repository probes for synced foreign-machine sessions.
  • Fix Linux release builds by compiling the sqlite-vec cgo bindings against the SQLite header bundled with mattn/go-sqlite3. This is why the release ships as 0.37.1: the 0.37.0 tag never produced binaries.

Acknowledgements

  • Thanks to Wes McKinney for semantic search, session summary export, activity cost fixes, foreign-machine git-discovery safeguards, the Linux release-build fix, and release documentation.
  • Thanks to Rod Boev for Windsurf workspace chat, Qoder and ZCode support, Mermaid rendering, usage context and token breakdowns, worktree layout mappings, tool-block copy buttons, single-session insight analysis, and the Codex custom tool-call fix.
  • Thanks to Matthew Jacobs for aligned CLI session search output and OMP parent-session lineage mapping.
  • Thanks to Elliot Murphy for Posit Assistant session support.
  • Thanks to Rob Schilder for sync_include_cwd_prefixes ingestion filtering.
  • Thanks to Phillip Cloud for PostgreSQL and DuckDB push-churn reductions, OpenCode-family sync churn fixes, and calendar range picker preservation.
  • Thanks to Mr Koala for applying configured port settings to the active runtime config.
  • Thanks to Prateek Rungta for consistent usage agent-exclusion filtering.
  • Thanks to Leuconoe for the Korean (ko) localization.
  • Thanks to Marius van Niekerk for recurring sync and database performance benchmark gates.

0.36.1

2026-07-03

New features

  • Add Devin CLI session support. AgentsView now discovers Devin CLI roots, reads local session data from the cli/ subtree, parses Devin messages and tool activity, includes Devin in supported-agent metadata, and documents the safe root to share when filing bug reports.
  • Extend parse-diff diagnostics for sessions last written through the incremental-append path. These rows are now classified as incremental_skew, excluded from --fail-on-change, and accompanied by guidance to run a full resync for a clean parser-drift baseline.
  • Report Antigravity gen_metadata without usage anomalies in sync summaries, so operators can spot Antigravity records that contain generation metadata but did not produce normalized usage totals.

Improvements

  • Show clearer startup and resync state while AgentsView initializes. Background startup now publishes the daemon PID, elapsed time, current phase, progress detail, and log path for agentsview serve status, while full resyncs print durable phase and completion lines.
  • Improve remote sync configuration and error reporting. HTTP remote sync now validates configured hosts more directly, keeps ad hoc HTTP remotes unsupported, and maps common failures such as token rejection, missing remote endpoints, connection refusal, DNS failures, and timeouts to actionable messages.
  • Refresh frontend controls and dialogs by migrating the Svelte UI to the shared @kenn-io/kit-ui components, making filters, range pickers, dialogs, settings controls, copy buttons, refresh controls, and related interaction states more consistent across pages.

Bug fixes

  • Discover OhMyPi sessions with a leading title slot, matching the current OMP/Pi-style transcript shape instead of skipping those files.
  • Reparse in-place Claude rewrites even when the source file size and mtime are unchanged, so same-length edits no longer leave stale stored messages.
  • Fix data-version resync completion so preserved orphaned sessions and sessions copied through an aborted-resync fallback still receive the backfills they need instead of being treated as fully rewritten.
  • Scope PostgreSQL session-alias backfill markers per push target, so one PostgreSQL destination cannot incorrectly satisfy or block the required full alias backfill for another target.

Acknowledgements

  • Thanks to Aaron Florey for Devin CLI session discovery and parsing.
  • Thanks to Matthew Jacobs for parse-diff incremental-skew diagnostics, OMP leading-title discovery, Antigravity gen_metadata anomaly reporting, and the same-size same-mtime Claude rewrite fix.
  • Thanks to Wes McKinney for startup transparency, resync consistency fixes, and remote sync configuration and error reporting.
  • Thanks to Marius van Niekerk for the frontend migration to shared UI controls and dialogs.
  • Thanks to Rod Boev for scoping PostgreSQL session-alias backfill markers by target.

0.36.0

2026-07-02

New features

  • Add pairwise usage cost comparisons to the Usage page and usage API. The new comparison panel can compare any two project or model slices in the current date/filter window and reports backend-computed cost, session count, total tokens, cost per session, tokens per session, absolute deltas, and percent deltas. The REST surface is GET /api/v1/usage/pairwise-comparison.
  • Show parser malformed-line badges on session detail pages when a parser preserved a session but skipped malformed source lines. The badge uses the persisted parser_malformed_lines count already produced by parser/sync validation, so users can spot partially recovered transcripts without opening CLI sync logs.
  • Add Traditional Chinese (zh-TW) localization across the Svelte frontend and register it as a supported locale alongside English and Simplified Chinese.
  • Support forking Claude sessions from a selected message. Claude message headers now expose a fork action that renders the transcript through the selected ordinal into a temporary prompt and launches claude from the session working directory, or returns a copyable command when launch is not available.
  • Add branch metadata and filter support for session queries. The new GET /api/v1/branches endpoint returns distinct (project, branch) pairs with opaque filter tokens, and session, search, analytics, activity, and usage endpoints accept those tokens as git_branch. Project-scoped tokens keep same-named branches in different repositories distinct and preserve empty branch values.
  • Flag Antigravity sessions decoded from unrecognized schemas. Antigravity IDE and CLI parsers now fingerprint SQLite schemas into source_version; unknown fingerprints get an agy-schema:<prefix> marker, session details expose decode_confidence: "low", sync summaries count the affected sessions, doctor sync reports them, and the UI shows an Unverified schema badge.

Improvements

  • Improve Cursor attribution in stats so agentsview stats and the stats service read the host-local Cursor attribution database with parity between direct and daemon-backed execution. Cursor attribution remains machine-local and reports unsupported project filters explicitly.
  • Extend parse-diff coverage to DB-backed Warp, Forge, and Piebald sessions by allowing provider-authoritative sources, not only file-backed parsers.
  • Reduce daemon sync CPU usage while sessions are actively streaming by avoiding repeated skip-check work on hot files that are still being written.
  • Improve unsupported usage reporting from agent capabilities. Agents now advertise whether they lack per-message token data and whether their costs are denominated in AI credits (surfaced as "Copilot AI Credits" for Copilot agents) as separate capabilities, so Copilot-family filters keep Copilot-specific wording while other no-token agents get generic guidance.
  • Publish a stable Docker image tag on tagged releases. stable always points at the most recent tagged release, while latest continues to track main and exact version tags remain immutable.

Bug fixes

  • Fix DuckDB push schema setup through Quack so remote Quack-backed pushes initialize and validate the DuckDB schema correctly.
  • Fix Visual Studio 2026 Copilot session parsing for the current trace layout while preserving the existing Visual Studio Copilot agent identity and discovery paths.
  • Surface unsupported Copilot usage filters correctly in the Usage page and API instead of showing an empty report without the Copilot no-token-data note.
  • Backfill worktree mappings for sessions that have empty working-directory rows but can be matched from sibling sessions under the same mapping.
  • Prevent OpenCode WAL watcher feedback loops by reading OpenCode-family SQLite databases through read-only file URIs, ignoring transient -shm events, and only treating main database or data-bearing WAL changes as meaningful.
  • Remove outdated Copilot billing wording from CLI usage output. The note now says Copilot records do not include token or cost data AgentsView can total, rather than referring to old billing terminology.

Acknowledgements

  • Thanks to Rod Boev for pairwise usage comparisons, Cursor attribution parity, Claude message-point session forking, worktree-mapping backfills, unsupported usage capability metadata, usage filter fixes, Visual Studio 2026 Copilot session parsing, and the stable Docker image tag.
  • Thanks to Matthew Jacobs for parser malformed-line badges, Antigravity schema-confidence reporting, provider-backed parse-diff coverage, the Copilot CLI wording fix, and MCP schema documentation.
  • Thanks to Linus for the Traditional Chinese (zh-TW) localization.
  • Thanks to Prateek Rungta for the project-scoped branch filter foundation.
  • Thanks to Phillip Cloud for the DuckDB/Quack schema setup fix.
  • Thanks to Trent Nelson for preventing OpenCode WAL watcher feedback loops.
  • Thanks to Wes McKinney for daemon sync CPU reduction, Windows test-suite fixture reuse, and release documentation.

0.35.2

2026-06-30

Bug fixes

  • Fix PostgreSQL push sync so skipped ownership conflicts no longer block the session-alias backfill marker.

Acknowledgements

  • Thanks to leejuhanKr for fixing PostgreSQL push sync behavior around skipped ownership conflicts.

0.35.1

2026-06-30

New features

  • Add OpenClaude session support so AgentsView can discover, import, and display OpenClaude JSONL sessions alongside Claude Code and other local agents.
  • Add Copilot CLI usage guidance for records that include aggregate usage metadata but do not include per-message token counts.

Improvements

  • Reuse the configured DuckDB mirror path for Quack sync so duckdb push, duckdb status, duckdb serve, and duckdb quack serve stay pointed at the same mirror by default.
  • Improve DuckDB and Quack sync behavior and coverage.

Bug fixes

  • Require daemon transport for CLI read commands that depend on daemon-backed data.
  • Surface desktop backend startup failures clearly instead of hiding the underlying error.
  • Validate desktop updater signatures before applying updates.

Acknowledgements

  • Thanks to Rod Boev for OpenClaude session support.
  • Thanks to Matthew Jacobs for Copilot CLI usage guidance when usage records do not include per-message token counts.
  • Thanks to Phillip Cloud for reusing the configured DuckDB path for Quack sync and improving DuckDB/Quack coverage.
  • Thanks to Marius van Niekerk for the daemon-transport requirement on CLI read commands.
  • Thanks to Wes McKinney for desktop backend error surfacing, desktop updater signature validation, and release documentation.

0.35.0

2026-06-29

New features

  • Add HTTP daemon remote sync so configured remote hosts can sync through the local daemon instead of requiring each CLI invocation to perform the work directly.
  • Add PostgreSQL serve support for curation and insights. agentsview pg serve can now back starred, trashed, renamed, and insight workflows from the shared PostgreSQL store.
  • Add a read-only agentsview mcp server for MCP-capable assistants to search sessions, inspect message windows, and summarize usage from the AgentsView archive. See MCP Server.
  • Add Recent Edits, a top-level feed for reviewing file edits across sessions and jumping back to the exact message that made each change. See Recent Edits.
  • Add batch session selection and deletion in the sidebar.
  • Add S3-compatible object storage discovery for Claude and Codex session roots, so a central AgentsView instance can sync raw session files from S3, MinIO, R2, OSS, and similar stores. See S3-Compatible Session Sources.
  • Add Chinese localization plus language settings across the frontend.
  • Add UI text-size scaling and high-contrast appearance mode.
  • Add an Analytics dashboard model filter that scopes dashboard panels to selected models. See Model Filter.
  • Add export and publish actions for generated insights.
  • Add IcodeMate agent support.
  • Add Cursor admin usage ingestion to the Usage board.
  • Add Kimi cost estimation from aggregate token usage.
  • Add per-remote sync intervals for configured remote hosts.
  • Add named PostgreSQL push targets so separate destinations can keep their own connection and watermark state.
  • Add offline LiteLLM pricing fallback data for usage and cost reporting.

Improvements

  • Make local CLI and desktop workflows daemon-first, aligning commands with the long-running local service used by the desktop app.
  • Standardize --format and --json output flags across commands.
  • Surface parser anomaly signals in sync summaries so malformed or suspicious parser output is easier to notice.
  • Stream remote sync progress through the daemon with per-phase elapsed time.
  • Improve daemon replacement handling for agentsview serve.
  • Preserve Pi message tree lineage.
  • Preserve XML-style prompt tags in rendered markdown.
  • Show summary-mode Antigravity CLI sessions and record Antigravity producing-version metadata.
  • Enrich tool summaries and add a skim layout for session reading.
  • Add an in-page help affordance for Insights.
  • Add right-side axis labels to the concurrency timeline.
  • Require opt-in Aider discovery to avoid scanning large or sensitive directory trees unexpectedly.
  • Add substrings and exact_matches to automated session detection configuration.
  • Publish raw markdown route companions for docs pages.
  • Deprecate Amp support documentation now that current Amp releases may keep complete threads server-side.

Bug fixes

  • Include Claude.ai export attachments during import.
  • Honor CLAUDE_CONFIG_DIR for Claude session discovery.
  • Support explicit WSL paths in desktop environment settings.
  • Persist desktop sidecar logs for desktop builds.
  • Use native webview zoom in the desktop app, fixing Windows zoom rendering.
  • Repair the AppImage DirIcon after bundling.
  • Fix remote daemon progress reporting so each sync phase stays visible with elapsed time.
  • Fix a resync discovery performance regression and correct its mis-attributed phase timing.
  • Detect Codex title-only renames during full sync.
  • Repair persisted Codex goal-context rows.
  • Treat Codex /goal continuation context as system content.
  • Fix Gemini per-turn context token calculation.
  • Fix Gemini insight generation by no longer forcing a sandboxed Gemini CLI run.
  • Count subagent sessions in analytics totals.
  • Clamp analytics top-session active duration by idle gaps.
  • Scope filtered PostgreSQL push watermarks correctly.
  • Reset push watermarks when PostgreSQL targets change.
  • Fail blocked PostgreSQL pushes and surface push errors.
  • Accept duration syntax for usage daily --since and --until.
  • Deduplicate replayed continued-session usage rows.
  • Suppress the Local reporter timezone sentinel in stats.
  • Fall back to AGENTSVIEW_GITHUB_TOKEN and the GitHub CLI auth token for local Gist publishing.
  • Install the binary with an atomic rename in make install.
  • Skip compatible PostgreSQL push schema DDL where it is not needed.

Acknowledgements

  • Thanks to Wes McKinney for HTTP daemon remote sync, daemon-first CLI and desktop workflows, Recent Edits, UI text-size scaling and high-contrast mode, remote sync progress fixes, daemon replacement handling, raw markdown docs routes, Amp documentation deprecation, PostgreSQL push watermark fixes, and installer hardening.
  • Thanks to Rod Boev for PostgreSQL serve curation and insight persistence, generated insight export and publishing, Cursor admin usage ingestion, per-remote sync intervals, named PostgreSQL push targets, offline LiteLLM pricing fallback data, Pi lineage preservation, Insights help, desktop fixes, Claude import/config fixes, and usage/stat fixes.
  • Thanks to Matthew Jacobs for the MCP server, parser anomaly signals, Codex rename and /goal handling fixes, Antigravity summary-mode sessions, blocked PostgreSQL push error handling, and parser validation work.
  • Thanks to Marius van Niekerk for the provider source-set migration work, frontend control chrome guard, localized reading-control pluralization, and analytics active-duration correction.
  • Thanks to icatw for Chinese localization and frontend localization coverage.
  • Thanks to Prateek Rungta for standardized CLI output flags and duration syntax for usage daily.
  • Thanks to DanielMao for S3-compatible session discovery.
  • Thanks to huaiyuWangh for batch sidebar selection and deletion.
  • Thanks to Leonidas Lux for IcodeMate agent support.
  • Thanks to Junt184 for Kimi cost estimation.
  • Thanks to Jesse Robbins for counting subagent sessions in analytics totals.
  • Thanks to Trent Nelson for repairing persisted Codex goal-context rows.
  • Thanks to Martin Wimpress for compatible PostgreSQL push schema handling.

0.34.5

2026-06-23

Bug fixes

  • Keep PostgreSQL session reads opt-in instead of enabling them unexpectedly.

Documentation

  • Refresh command and session API docs for current behavior.

0.34.4

2026-06-22

New features

  • Reject exported archives from newer AgentsView versions so incompatible imports fail safely.

Improvements

  • Refresh daily usage totals correctly while reducing repeated pricing lookup work.
  • Group GitHub Actions Renovate updates in CI dependency automation.

Bug fixes

  • Avoid macOS Photos permission prompts while scanning Aider sessions.
  • Avoid macOS Music permission prompts while scanning Aider sessions.
  • Reparse stale Roborev CI projects so updated session data appears correctly.

0.34.3

2026-06-22

Improvements

  • Make full resync rebuilds more efficient, reducing sync cost for large archives.
  • Update documentation for the latest command, usage, and session API changes.

Bug fixes

  • Recognize embedded security review prompts correctly in stored messages.

0.34.2

2026-06-22

New features

  • Show detailed resync progress while full resyncs are running, so the UI can report the current phase instead of only showing a generic syncing state.
  • Add a resume-focused session table to agentsview session list, including --resume and --active modes for quickly finding recently active sessions.

Improvements

  • Add native session links in the sidebar when an agent exposes a supported resume target.
  • Redesign the supported agents docs grid as uniform clickable chips.

Bug fixes

  • Handle search terms with operator characters without returning server errors.
  • Parse native Kimi Code records correctly.
  • Improve incremental JSONL resume reliability.
  • Make large-session deletes safer for full-text search cleanup.
  • Prevent Ctrl+K command palette input from reselecting text on every keystroke.
  • Avoid DuckDB tool-call attachment failures from invalid negative call indexes.

Acknowledgements

  • Thanks to Wes McKinney for detailed resync progress, native Kimi Code record parsing, and the supported agents docs grid redesign.
  • Thanks to Matthew Jacobs for the resume-focused session table and search operator-character fix.
  • Thanks to Rod Boev for native sidebar session links, incremental JSONL resume reliability, safer large-session full-text cleanup, and the Ctrl+K palette input fix.
  • Thanks to MirzaSamadAhmedBaig for the DuckDB negative call-index fix.

0.34.1

2026-06-21

New features

  • Add the AgentsView documentation site, including quickstart, commands, configuration, usage, stats, token usage, API, remote access, and PostgreSQL sync docs.
  • Add documentation build and deployment support, including validation, asset hydration, screenshot handling, and Vercel deployment configuration.

Improvements

  • Clarify forwarded development access instructions for public origins, tunnels, WSL2, Codespaces, Coder, and reverse proxy setups.
  • Move internal-only documentation into an internal docs area so it stays available without publishing as user documentation.
  • Add automated checks for docs sources, built site output, redirects, and docs assets.

Bug fixes

  • Avoid scanning protected home directories during Aider session discovery.

0.34.0

2026-06-20

New features

  • Add the Activity reporting dashboard. The new top-level page reports active time, idle time, peak concurrency, agent-minutes, cost, output tokens, projects, models, machine filters, automation filters, clickable concurrency buckets, session rows, project/model/agent breakdowns, and range-scoped Activity Insights. See Activity.
  • Add session quality scoring and insight patterns. Session intelligence now has a richer scoring basis for recurring quality patterns, and the Activity page can generate a daily or range activity insight for the currently resolved range.
  • Add a Top Skills analytics panel that ranks skill-backed tool calls by call count, sessions, recency, agent mix, project mix, and weekly trend. Skill names come from explicit tool metadata and are inferred from SKILL.md reads for agents (such as Codex and Cursor) that do not record them. See Top Skills.
  • Add new session sources: OhMyPi, Reasonix, aider, Mistral Vibe, Visual Studio Copilot, Shelley, QwenPaw, MiMoCode, Claude Cowork sessions from Claude Desktop local-agent mode, Kilo, DeepSeek TUI, and gptme. Each source has a matching environment variable and config.toml directory-array key. See Session Discovery.
  • Add background serve mode. agentsview serve --background starts the web UI as a managed local service, writes logs to ~/.agentsview/serve.log, and records enough runtime metadata for agentsview serve status and agentsview serve stop to inspect or stop the daemon later. See CLI Reference.
  • Route agentsview session read commands through PostgreSQL. When AGENTSVIEW_PG_URL or [pg].url is configured, read-only session commands use the shared PostgreSQL store by default; pass --pg to require that path explicitly. Mutating commands continue to use the local archive.
  • Target an explicit session server from the agentsview session CLI with --server <url>, authenticated by AGENTSVIEW_SERVER_TOKEN or --server-token-file; a discovered local daemon's token is never sent to an explicit URL. See Session API.
  • Add session list sorting to CLI and HTTP surfaces with agentsview session list --sort, --reverse, order_by, descending, and per-key direction suffixes such as messages:desc,started:asc. See Session API.
  • Add agentsview doctor sync, a sync diagnostics report for checking database readability, data-version counts, agent roots, and recent sync-debug lines. See CLI Reference.
  • Add agentsview parse-diff, a parser QA report that re-parses source files from the current archive and reports differences from the stored SQLite rows without rewriting sessions. See CLI Reference.
  • Surface Copilot AI credits in usage reporting when Copilot-family sessions have priced usage.
  • Add Copy source file path to the session export menu when the active session has a backing source file.

Improvements

  • Use one shared range picker and keep date ranges synchronized across the Analytics dashboard, Usage page, and Activity page.
  • Improve SQLite dashboard performance by reducing heavy analytics refetches during sync, adding more deliberate freshness handling, improving large sidebar index loading, adding usage-query indexes, compressing API responses, and bounding WAL checkpoints.
  • Batch PostgreSQL push comparison reads for faster sync.
  • Preserve source machine metadata during PostgreSQL push instead of replacing it with the pushing machine.
  • Persist Codex and OpenCode working directories so Git worktree mappings can classify more sessions by their real project root.
  • Streamline the Analytics and Usage refresh control: a single refresh button paired with a relative "Updated…" timestamp, where a manual refresh also resets the automatic refresh timer.
  • Show agent-provided display names in the dashboard "Top sessions" list instead of the first message, matching the session sidebar.
  • Extract token usage and cost from VS Code Copilot sessions when their persisted request metadata includes promptTokens, outputTokens, and resolved model names. See VS Code Copilot Token Metrics.
  • Improve Antigravity parsing: IDE role detection now recognizes newer step types, model-name extraction filters noisy prose and URLs, token extraction is more complete, and tool-call metadata is richer.
  • Import Codex renamed session titles from session_index.jsonl and re-parse Codex sessions when token counts arrive late, so sidebar titles and usage rows catch up without a manual workaround.
  • Promote orphan subagent sessions into sidebar roots instead of hiding them behind missing parents.
  • Fill in working directory metadata for Pi sessions when the Pi transcript header provides it.
  • Refresh frontend glyphs with lucide icons.
  • Strengthen selected session styling in the sidebar so the active row remains visible across themes and agent colors.
  • Improve Activity refresh controls, filter controls, selected sidebar rows, and read-only UI states.
  • Advertise the WSL eth0 URL when agentsview serve --host 0.0.0.0 runs inside WSL and no explicit --public-url was supplied.
  • Migrate frontend tooling to Vite+ while preserving the existing Svelte app behavior.

Bug fixes

  • Prevent PostgreSQL push collisions for same-ID sessions from different machines.
  • Deduplicate duplicate Claude sync sources so the same transcript is not indexed from overlapping roots.
  • Support the Claude companion session layout, including subagent parent inference from companion directories and externalized tool result content.
  • Support the newer .kimi-code session layout and add .kimi_openclaw to OpenClaw's default discovery paths.
  • Parse OpenClaw and QClaw toolCall/toolResult blocks, whose camelCase names the shared content extractor previously dropped, so tool calls and tool-only assistant turns no longer vanish from those transcripts.
  • Render Cursor ApplyPatch tool calls as patch/diff content in the message viewer and markdown/export paths.
  • Fix nested fenced code block parsing.
  • Pin CSP resource origins to the configured public origin, fixing deployments behind a trusted public URL or proxy.
  • Classify single-turn automation from session transcripts, not just the stored first-message preview, so automated review sessions are filtered correctly even when their preview is a generated title.
  • Base skill analytics on message timestamps.
  • Route command palette session picks correctly from non-session pages.
  • Skip local-only frontend calls in read-only mode, including PostgreSQL-backed pg serve deployments.
  • Tolerate NULL message timestamps in velocity analytics.
  • Keep usage chart date labels within bounds.
  • Show hour-of-week heatmap rows starting on Sunday.
  • Use CREATE_NO_WINDOW for the Windows background daemon.
  • Update DOMPurify for security.

Acknowledgements

  • Thanks to Wes McKinney for the Activity dashboard, SQLite dashboard performance, sync diagnostics, explicit session-server targets, Claude companion session linking, Cursor ApplyPatch rendering, nested fence parsing, the WSL eth0 URL, copy-source-path support, and assorted CLI and frontend fixes.
  • Thanks to Nitin Gupta for background serve mode.
  • Thanks to Luiz Ferraz for OhMyPi support.
  • Thanks to Frank Zhu for QwenPaw support.
  • Thanks to Rod Boev for Reasonix support, Codex renamed titles, PostgreSQL source-machine preservation, PostgreSQL push batching, Copilot AI credits, orphan subagent promotion, and MiMoCode support.
  • Thanks to SyedaAnshrahGillani for Antigravity role and model extraction improvements.
  • Thanks to Justin Cauchon for Claude Cowork indexing.
  • Thanks to stephan379 for VS Code Copilot token and cost extraction.
  • Thanks to Matthew Jacobs for parse-diff reporting, Shelley support, session sorting, the NULL timestamp velocity fix, OpenClaw/QClaw tool-call parsing, and parser registry coverage.
  • Thanks to matt wilkie for Kilo support.
  • Thanks to yuna for DeepSeek TUI support.
  • Thanks to Matt Van Horn for PostgreSQL-backed CLI reads.
  • Thanks to 潦草学者 for Kimi .kimi-code and .kimi_openclaw support.
  • Thanks to Douglas Creager for Pi working-directory metadata and dashboard display names.
  • Thanks to Bob for the gptme parser.
  • Thanks to Trần Quốc Việt for the Top Skills analytics panel and SKILL.md skill-name inference.
  • Thanks to Marius van Niekerk for session quality scoring and insight patterns, the Vite+ migration, and the Codex late-token-count fix.
  • Thanks to vikram bhandoh for Antigravity token extraction and richer tool-call metadata.
  • Thanks to Phillip Cloud for synchronized date ranges, the shared range picker, lucide icon migration, transcript-based automation classification, refresh and filter polish, read-only UI fixes, and usage chart label fixes.
  • Thanks to liyi0x0 for the Windows background daemon window fix.
  • Thanks to Jesse Vincent for duplicate Claude sync-source deduplication and unwatched-root polling improvements.
  • Thanks to Berend de Boer for Codex and OpenCode working-directory persistence.
  • Thanks to KBS for aider support.
  • Thanks to Amjad Saadeh for Mistral Vibe support.
  • Thanks to mtucker-virtra for Visual Studio Copilot support.

0.33.1

2026-06-12

New features

  • Show user-assigned Pi session names. The Pi parser now extracts names assigned with Pi's /name command, so those sessions appear in the sidebar under their given name alongside other agent-provided session names.

Bug fixes

  • Stop double-counting forked Codex sessions. codex fork copies the parent's rollout history — session metadata, turns, messages, and token counts — into the top of the new file, and the parser counted that replayed prefix as the fork's own activity, billing the shared history in both the parent and the fork; the replayed parent metadata could also overwrite the fork's session ID, storing the fork under the parent's identity. Forked sessions now skip the replayed history and keep their own identity.
  • Render tool call groups reliably when message identifiers repeat. Sessions read through the PostgreSQL backend's pg serve leave message IDs unset (its messages table keys on session and ordinal), so a tool call group holding more than one message produced duplicate render keys and tore down the message panel. Groups now key messages by their ordinal, which is unique within a session on every backend.

Acknowledgements


0.33.0

2026-06-12

New features

  • Add a DuckDB mirror backend with Quack remote support. agentsview duckdb push mirrors the local SQLite archive into ~/.agentsview/sessions.duckdb, agentsview duckdb serve runs the read-only web UI from that mirror, and agentsview duckdb quack serve exposes the mirror over DuckDB's Quack remote protocol so another machine can serve from it. SQLite remains the source of truth for ingestion — the mirror is one-way, like PostgreSQL sync. Configuration lives in a [duckdb] section of config.toml. See DuckDB Mirror for the full setup, including the Quack token and loopback safety defaults. The DuckDB driver is linked into every binary except windows/arm64, where the upstream bindings ship no prebuilt library — agentsview duckdb subcommands report a clear error there while everything SQLite-backed keeps working.
  • Add Command Code session support. Sessions are discovered under ~/.commandcode/projects/ as one JSONL file per session, with an optional .meta.json sidecar for metadata; structured tool calls, tool results, and thinking blocks are parsed from the message content. Configure custom paths with COMMANDCODE_PROJECTS_DIR or commandcode_project_dirs. See Session Discovery.
  • Add Zed AI assistant session support. AgentsView reads Zed's threads/threads.db SQLite database from the platform data directory (~/Library/Application Support/Zed on macOS, ~/.local/share/zed on Linux, ~/AppData/Local/Zed on Windows), extracting messages, model names, and per-request token usage, so Zed sessions also contribute to usage and cost reports. Configure custom paths with ZED_DIR or zed_dirs.
  • Allow publishing sessions as secret GitHub gists. The publish button in the session header is now a dropdown with Publish public Gist and Publish secret Gist entries, backed by an optional secret parameter on the publish endpoint. Note that secret gists are unlisted, not access-controlled — anyone with the URL can read them. The p shortcut still publishes publicly. See Publish to Gist.
  • Ship native Windows ARM64 builds: release archives now include a native windows_arm64 binary (built with the aarch64 llvm-mingw toolchain, with full CGO/FTS5 support) and PyPI gains a win_arm64 wheel. The PowerShell installer prefers the native build automatically. See Quick Start.
  • Add configurable remote hosts for agentsview sync. Declare a fleet of machines as [[remote_hosts]] entries in config.toml (each with host and optional user / port) and a bare agentsview sync runs the local sync, then syncs every configured host over SSH in order. Failed hosts are reported and skipped rather than aborting the run; sync --host X continues to ignore the configured list.
  • Show the session cost in the session header. Next to the token summary, the header now displays the estimated cost of the open session (<$0.01 floor, two decimals up to $100, whole dollars above), computed from the same per-session usage endpoint that powers agentsview session usage. The badge is hidden when the session has no token data or its models have no pricing.
  • Add syntax highlighting for fenced code blocks, powered by Shiki. Twelve common languages are bundled (JavaScript, TypeScript, Python, Bash, JSON, YAML, Markdown, HTML, CSS, Rust, Go, SQL); unlabeled or unknown languages render as plain text. Highlighting is skipped for blocks over 50 KB or 800 lines to keep large sessions fast, and the highlighter loads lazily in code-split chunks so it costs nothing until the first code fence renders. See Code Blocks.

Improvements

  • Show agent-provided session names in the sidebar. Several agents record a session title (Claude Code's /rename, Claude.ai and ChatGPT conversation names, Forge, Hermes, Kiro, Piebald, Cortex Code, and Command Code's .meta.json titles); the session list now shows these titles instead of the first-message preview. Manual in-app renames always win and are never overwritten by agent-provided names. The release bumps the parser data version, so existing sessions backfill their names on the next resync.
  • Leave session labels untruncated. Sidebar labels were hard-truncated at 50 characters; the full label is now placed in the DOM and CSS ellipsis clipping adapts to the actual sidebar width instead of a fixed character count.
  • Extract Antigravity CLI token usage. The parser now reads token counts from trajectory gen_metadata blobs and from sidecar generatorMetadata arrays, with precedence rules that prevent double-counting, so Antigravity CLI sessions contribute to the Usage dashboard and agentsview usage after the 0.33.0 resync.
  • Prefer agy-reader trajectory sidecars when they are at least as complete as the raw Antigravity CLI source: for SQLite sessions the richer source wins by step count, and for encrypted .pb sessions the sidecar is used whenever present.
  • Infer the Antigravity CLI project when history.jsonl rows lack a conversation ID, by matching the conversation's first user prompt against history entries — previously those sessions grouped under unknown.
  • Discover nested Claude workflow subagents. Subagent transcripts written under nested subagents/ paths (as produced by workflow orchestration) are now found by a recursive walk instead of a flat directory listing, so they appear in the sub-agent tree.
  • Keep the app usable when the PostgreSQL sync backend is degraded. A 5xx from the backend no longer forces a full page reload (which could loop while the database was down) — the UI stays interactive with a compact status-bar warning, and recovers once a real data read succeeds. True network failures still use the reload-based recovery path.
  • Improve PostgreSQL and CockroachDB analytics performance: usage-window queries push their filters down into the source tables, tool-call category aggregation moved from Go into SQL, and model-pricing writes are batched and skipped when unchanged. Aggregation semantics are unchanged across SQLite, PostgreSQL, and CockroachDB.
  • Ship fallback pricing for claude-fable-5 ($10 input, $50 output, $12.50 cache creation, $1 cache read per million tokens), so Fable 5 sessions are priced before the LiteLLM catalog catches up. See Pricing Source.
  • Fall back to the system browser on Linux when the desktop WebView cannot render. On GPU/driver/compositor combinations where WebKitGTK aborts with an EGL error and leaves a blank window, the desktop app now detects the dead WebView, opens the UI in your default browser, and explains what happened — the backend keeps running either way.
  • Add anonymous daemon telemetry. The server now sends a daily liveness ping (version, commit, OS, architecture, and a random per-machine install ID — no session data, paths, hostnames, or prompts). Disable it with AGENTSVIEW_TELEMETRY_ENABLED=0. See Privacy and Telemetry.

Bug fixes

  • Include non-Claude agents in the peak context token distribution. The stats bucketing was gated to Claude sessions even though other parsers (Hermes, Kimi, Forge, Zed) record peak context tokens; the gate now keys on whether the data exists.
  • Create the PostgreSQL content trigram index with fastupdate = off. With the GIN default, continuous ingest buffered inserts into a pending list that only VACUUM merges, bloating the index by orders of magnitude on large archives. New indexes are created with fastupdate = off and existing ones are altered on startup; run REINDEX INDEX idx_messages_content_trgm; once to reclaim space already consumed.
  • Fix the Windows PowerShell 5.x installer, which aborted with "maximum redirection count exceeded" while resolving the latest release; the installer now follows the redirect with a HEAD request that works on both PowerShell 5.x and 7+. On Windows ARM64 it also probes for the native arm64 asset and falls back to amd64 under emulation only when no native build exists.

Acknowledgements

  • Thanks to Marius van Niekerk for the DuckDB mirror backend, secret gist publishing, nested workflow subagent discovery, untruncated session labels, and daemon telemetry.
  • Thanks to Matthew Jacobs for the Antigravity CLI sidecar token usage, trajectory-sidecar preference, project inference, and parser fuzz hardening.
  • Thanks to vikram bhandoh for Antigravity CLI token usage extraction.
  • Thanks to Aaron Florey for Command Code session support.
  • Thanks to ArBing Xie for Zed session support.
  • Thanks to Josix for Shiki syntax highlighting.
  • Thanks to chrislee3408 for the session cost display in the session header.
  • Thanks to Gordon Woodhull for agent-provided session names in the sidebar.
  • Thanks to Phillip Cloud for degraded-backend resilience and the CockroachDB analytics performance work.
  • Thanks to Martin Wimpress for the trigram index fix.
  • Thanks to matt wilkie for the Linux system-browser fallback.
  • Thanks to nyxst4ck for the peak context token distribution fix.

0.32.1

2026-06-05

New features

  • Show the full content of tool calls in the message viewer. Long tool parameters — Bash commands and heredocs, large Write payloads — were truncated at 200 characters with no way to reach the rest, even though the complete text was already stored. The collapsed tool block now previews the first 20 lines with a Show more / Show less toggle, Bash calls render their description and command fields in full, content is capped at 200 lines to keep the DOM light, and a search match inside a collapsed block expands it automatically.

Improvements

  • Skip /usage probe sessions from session lists and usage reporting. Content-free probes whose only real turn is the /usage command — such as CodexBar's ClaudeProbe, which runs claude /usage to read usage stats — are now dropped during parsing, while sessions that also contain a genuine prompt are kept.
  • Recognize Codex code-review sessions as automated activity. Codex re-emits the initial prompt verbatim when it continues a task across turns, which pushed the user-message count past the single-turn gate and left review sessions ("You are a code reviewer." and "You are a security code reviewer.") unflagged. The parser now drops a verbatim replay of the first prompt until a distinct user turn appears, so these sessions classify as automated and stay out of session lists and analytics by default. Both this and the /usage skip ship with a dataVersion bump, so existing archives correct themselves on the next resync.

Bug fixes

  • Resolve dotted model names to the dashed pricing-catalog keys so usage costs compute correctly. Some agents report model ids with dots (such as OpenCode's claude-opus-4.7) while the LiteLLM table keys them by the dashed API string (claude-opus-4-7), so agentsview usage daily priced those sessions at $0.00. Every cost lookup now falls back to the dot-to-dash form.
  • Speed up sync project resolution by avoiding unnecessary git subprocesses. Resolving a session's project now prefers a cheap filesystem .git walk for normal repos and linked worktrees instead of shelling out to git per session, keeping the previous git-based lookup as a fallback for rare live-repo layouts. On a ~35.7k-session archive this brings cold-sync time back from about 4m31s to about 1m14s.

Acknowledgements

  • Thanks to Nat Torkington for showing the full content of tool calls with a show-more toggle.
  • Thanks to Daniel Grenner for resolving dotted model names to dashed pricing keys.

0.32.0

2026-06-03

New features

  • Add support for newer Antigravity CLI SQLite sessions stored as ~/.gemini/antigravity-cli/conversations/<uuid>.db. AgentsView discovers the SQLite files directly, prefers them over same-ID encrypted .pb files, parses the trajectory steps through the shared Antigravity SQLite/protobuf path, and includes .db-wal / .db-shm metadata in change detection so live updates resync reliably. The existing encrypted .pb, agy-reader sidecar, and plaintext summary flows remain in place for older Antigravity CLI sessions. See Session Discovery.
  • Add Copilot CLI token usage tracking. The parser now reads assistant output tokens from assistant.message events and model-level input, output, cache-read, cache-write, and reasoning totals from session.shutdown modelMetrics. Claude model IDs reported with dotted versions are normalized to the pricing-catalog form, so Copilot CLI rows now contribute to the Usage dashboard, agentsview usage, and per-session usage reports after the 0.32.0 resync.
  • Add GET /api/v1/sessions/{id}/usage, a per-session usage REST endpoint that returns the same stable JSON fields as agentsview session usage --format json, including cost status, model lists, and unpriced models. The endpoint works under both local SQLite-backed agentsview serve and read-only agentsview pg serve.
  • Add an automatic PostgreSQL push daemon. Run agentsview pg push --watch for a foreground watcher that performs an initial catch-up push, coalesces file changes with --debounce, pushes at a periodic --interval floor, and reconnects after transient PostgreSQL failures. The new agentsview pg service command installs and manages that watcher as a per-user launchd service on macOS or systemd --user service on Linux. See PostgreSQL Sync.
  • Ship fallback pricing for claude-opus-4-7 at the current Opus 4.6 / 4.8 tier ($5 input, $25 output, $6.25 cache creation, $0.50 cache read per million tokens), so offline reports and fresh installs no longer leave Opus 4.7 rows unpriced before the LiteLLM catalog is available locally.

Improvements

  • Replace the custom daemon state-file and PID-lock code with the shared go.kenn.io/kit daemon runtime. CLI commands now use kit runtime records and start locks for daemon discovery, and the server exposes a shared /api/ping liveness endpoint.
  • Switch git repository discovery and author lookup paths onto go.kenn.io/kit helpers, thread caller contexts through git outcome collection, and pin the Go toolchain consistently in source and Docker builds.
  • Improve the PostgreSQL push/watch path so the watcher uses the same [pg] config, project filters, classifier wiring, and result-content blocking rules as one-shot pg push and normal serve.
  • Replace custom frontend UI glyphs with shared lucide Svelte icons for more consistent controls, with focused icon export tests to guard the mappings.
  • Improve forwarded-host rejection handling. When AgentsView is reached through SSH port forwarding, a reverse proxy, or a remote dev environment with an untrusted Host, the server now returns a descriptive 403 body and logs a breadcrumb; the frontend Settings load surfaces the same actionable --public-url hint instead of a generic forbidden error. See Remote Access.
  • Update agy-reader install documentation to the current module root command: go install github.com/mjacobs/agy-reader@latest.

Bug fixes

  • Stop benign tar warnings from aborting SSH remote sync. The local extractor now uses Go's archive/tar, skips only known self-referential hardlinks, and still fails on malformed, truncated, or path-escaping archives. Remote tar non-zero exits are tolerated only when every stderr line matches known "file changed/removed while reading" warnings.
  • Rename the private frontend npm package from the old working name to agentsview-frontend, matching the current project identity and avoiding package-name conflicts.

Acknowledgements

  • Thanks to Matthew Jacobs for self-explaining forwarded-host 403 responses, Antigravity CLI SQLite session support, and updated agy-reader install guidance.
  • Thanks to Marius van Niekerk for the lucide icon migration, shared kit daemon runtime, kit git-helper migration, and Go toolchain pinning.
  • Thanks to Max Feinberg for the PostgreSQL push watcher and macOS/Linux service management.
  • Thanks to Michael Chapman for Copilot CLI token usage tracking.
  • Thanks to Phillip Cloud for the per-session usage REST endpoint.
  • Thanks to Charley Wu for catching the broken agy-reader install command path.

0.31.1

2026-05-28

Bug fixes

  • Add fallback pricing for Claude Opus 4.8 so cost estimates stay accurate before the model reaches the LiteLLM catalog. Opus 4.8 launched at the same rates as Opus 4.6 / 4.7 ($5 input / $25 output per million tokens, $6.25 / $0.50 cache create / read), but with no catalog entry yet the exact-match cost lookup priced its messages at $0 in agentsview usage. AgentsView now seeds a claude-opus-4-8 fallback row at the current Opus tier; the background LiteLLM refresh takes over automatically once the upstream catalog adds the model.

0.31.0

2026-05-28

New features

  • Parse decrypted Antigravity CLI trajectory sidecars for richer Antigravity session imports. When a <uuid>.trajectory.json file sits next to the existing AES-encrypted <uuid>.pb transcript (under ~/.gemini/antigravity-cli/conversations/ or implicit/), AgentsView uses it as the source of truth for messages, tool calls, and tool results, falling back to the history.jsonl + brain/ artifact path when no sidecar is present. The sidecars are produced out-of-process by agy-reader, which performs the decryption and writes plain JSON — so this path needs no ANTIGRAVITY_KEY. AgentsView treats the sidecar as untrusted input: unknown step types are skipped and reads are size-capped. The in-process ANTIGRAVITY_KEY decrypt path is preserved as a fallback. See Session Discovery.
  • Expand secret scanning with six more well-anchored vendor rules: OpenAI (sk-proj-, sk-svcacct-, sk-admin-), GitLab personal access tokens (glpat-…), npm tokens (npm_…), PyPI API tokens (pypi-… macaroons), Hugging Face tokens (hf_…), and SendGrid keys (SG.…). The CLI summary now splits counts into definite vs. candidate findings — N findings (X definite, Y candidate) — and points you at agentsview secrets list --confidence all when candidate-tier matches exist. JSON consumers get the new count fields automatically.

Improvements

  • Give the right-column Session Vital Signs panel a sticky Analysis title bar with an explicit close button, and make the header toggle read Show / Hide session analysis based on the panel's current state.
  • Add hover and title hints plus accessible labels across the compact title bar, session breadcrumb, sidebar group headers, and modal controls, improving the experience for assistive-technology users.
  • Document the project's current security posture — threat model, trust boundaries, outbound channels, data-at-rest sensitivity, and open questions — in a new SECURITY.md.
  • Update frontend dependencies and the Docker / CI GitHub Actions.

Bug fixes

  • Treat only 401 Unauthorized from a settings load as a token-auth challenge. A 403 Forbidden response now surfaces as a settings error instead of triggering a misleading auth-token prompt.
  • Use the GitHub release redirect endpoint in the installers and the in-binary updater (install.sh, install.ps1, and agentsview update), reading the releases/latest 302 target instead of calling api.github.com. Users behind shared NAT, VPN, or CGNAT no longer exhaust the unauthenticated API's 60-request hourly quota during install or update.

Acknowledgements

  • Thanks to Matthew Jacobs for the SECURITY.md describing the project security posture and parsing decrypted Antigravity CLI trajectory sidecars.
  • Thanks to Marius van Niekerk for header accessibility hints and labels.

0.30.1

2026-05-25

Bug fixes

  • Refresh pricing from LiteLLM when agentsview session usage hits an unpriced model. The command previously reported Cost: n/a (unpriced: <model>) for a newly released model even when LiteLLM already had the rate — running agentsview serve once was enough to fix it, because the server's background refresh populated the catalog, while the CLI path only seeded the embedded fallback. The CLI now triggers a one-shot LiteLLM fetch when it encounters an unpriced model and no daemon is running, then re-queries. A one-hour cooldown keeps repeated invocations — or persistent fetch failures when offline — from pinging LiteLLM on every call.

0.30.0

2026-05-24

New features

  • Add full session content search across stored transcripts — substring, RE2 regex, or FTS5 tokenized modes — over message bodies, tool inputs, and tool result content. Exposed as agentsview session search <pattern> with the standard session filters (--project, --agent, --date-from, etc.) plus --regex, --fts, and --in messages,tool_input,tool_result, and over HTTP at GET /api/v1/search/content. Snippets are returned with ~60 characters of context on each side, snapped to rune boundaries, and any value that matches a secret-scanner rule is masked unless the caller passes --reveal from localhost.
  • Add secret scanning for session content. A new internal/secrets rule pack flags definite vendor formats (AWS access keys, sk-ant-…, ghp_…, github_pat_…, xoxb/xoxa/xoxp/xoxr/xoxs, Stripe sk_live_… / rk_live_…, Google AIza… keys, PEM private-key blocks) plus an opt-in candidate tier (basic-auth URLs, JWTs, high-entropy assignments). Definite findings are scored inline during sync; the new agentsview secrets command group lists them (redacted by default) and re-scans the archive for the candidate tier on demand. Sessions carry a secret_leak_count summary that surfaces in session get and a new session list --has-secret filter; the same shape is mirrored in PostgreSQL sync.
  • Add agentsview session usage <id>, a per-session token-and-cost report. Prints output and peak-context totals plus a ~$X.XX model-pricing estimate, with --format json for scripting. Reuses the same LiteLLM pricing table and custom_model_pricing overrides as agentsview usage daily, and runs an on-demand sync for the target session when no daemon is running. Replaces the older token-use subcommand, which remains as a deprecated alias.
  • Add support for Google Antigravity IDE and CLI sessions (Antigravity, Google's agentic IDE). The IDE parser opens per-session SQLite databases under ~/.gemini/antigravity/conversations/ and decodes the protobuf step payloads; the CLI parser reads ~/.gemini/antigravity-cli/ and surfaces the plaintext brain/ artifacts and history.jsonl. Setting ANTIGRAVITY_KEY to the base64-encoded AES key additionally decrypts the .pb transcripts, mirroring the strategy used by the upstream antigravity_decryptor Python tool. Override the directories with ANTIGRAVITY_DIR / antigravity_dirs and ANTIGRAVITY_CLI_DIR / antigravity_cli_dirs.
  • Add support for Qwen Code (~/.qwen/projects/, override with QWEN_PROJECTS_DIR or qwen_project_dirs), QClaw (~/.qclaw/assets/static/agents/, override with QCLAW_DIR or qclaw_dirs), and WorkBuddy (~/.workbuddy/projects/, override with WORKBUDDY_PROJECTS_DIR or workbuddy_project_dirs). WorkBuddy includes inline subagent linking via <sessionId>:subagent:<subagentId> IDs.
  • Add support for the current Kiro CLI SQLite store at ~/.local/share/kiro-cli/data.sqlite3. The Kiro CLI parser now reads both the legacy ~/.kiro/sessions/cli/ JSONL layout and the SQLite conversations_v2 table; when the same conversation exists in both, the SQLite record wins.
  • Add PostgreSQL curation metadata to pg push. Starred sessions and pinned messages now sync to two new tables (starred_sessions, pinned_messages) so curation state is shared across machines through the same push. Pinned messages are reconciled by source_uuid, so pins survive message-ordinal shifts after a re-parse.
  • Add configurable insight agent binaries. Set [agent.<name>] binary = "..." in ~/.agentsview/config.toml to point each insight-generation agent (Claude, Codex, Copilot, Gemini, Kiro) at a specific executable. When unset, AgentsView falls through to the default PATH lookup.

Improvements

  • Add a follow latest message toggle to the session header. While active, the message list auto-scrolls to the newest message as updates stream in; clicking a specific message or scrolling up cancels the follow. The preference is persisted in localStorage.
  • Honor the Normal and Focused transcript modes in the standalone HTML export. The exported file now ships with a Normal / Focused radio toggle in the document header, so a recipient who only wants the user-and-final view can flip into Focused mode without re-running the export.
  • Add copy buttons to code blocks in session messages, matching the per-message copy action. The button appears on hover/focus over the code block and copies the raw code (no fences).
  • Import richer Hermes state-database metadata — parent-continuation chains, titles, per-message token usage, and inline cost — and classify Hermes compaction handoffs as compact-boundary system messages. Hermes now contributes to agentsview usage totals.
  • Normalize Gemini per-message token usage into the same input_tokens / output_tokens / cache_creation_input_tokens / cache_read_input_tokens shape used by Claude and Codex, with Gemini thoughts counted toward output tokens and cached prefix toward cache reads. Gemini sessions now produce real cost rows in agentsview usage instead of showing up only in the models-used list.
  • Note Homebrew Cask in the README install section: brew install --cask agentsview is the recommended desktop-app install on macOS.
  • Rename the upstream repository to github.com/kenn-io/agentsview, publish the container image at ghcr.io/kenn-io/agentsview, and adopt the go.kenn.io/agentsview vanity Go module path. All references in the docs site have been updated to match.

Bug fixes

  • Load the sidebar from a new skinny session-index endpoint so large refreshes no longer trip a render storm against the full session payload — the index returns lightweight rows and the visible rows hydrate on demand.
  • Widen the server's CSP connect-src to allow http:, https:, ws:, and wss: origins so the desktop app's Connect to Remote Server action can reach external AgentsView instances. Other CSP directives stay pinned to 'self'.
  • Skip slash-command first messages (/login, /plan, /clear, …) when computing the sidebar preview text, instead of the previous allowlist that only covered /clear and /effort. The slash-prefix heuristic matches any /<word> followed by end-of-string or whitespace, so absolute file paths in user messages still surface normally.
  • Fix a Windows desktop sidecar lock during in-place updates — the bundled Go server is now stopped only immediately before the Tauri updater swaps the binary, so the download phase no longer races against the running agentsview.exe.
  • Harden temporary-directory cleanup in tests against open SQLite handles on Windows by forcing a GC and retrying RemoveAll with exponential backoff. CI-only change.

Acknowledgements

  • Thanks to Marius van Niekerk for fixing a Windows desktop update sidecar lock, supporting configured insight agent binaries, importing Hermes state-database metadata and usage, the copy action on session code blocks, and the go.kenn.io vanity module path.
  • Thanks to Trent Nelson for clarifying insight generation in read-only mode and Normal/Focused transcript modes in HTML exports.
  • Thanks to Matej Sychra for Qwen Code agent support.
  • Thanks to Muescha for the Homebrew Cask install note in the README.
  • Thanks to Bob N for reading the current Kiro CLI SQLite session store.
  • Thanks to Christopher Swingley for skipping any slash command when computing the session preview.
  • Thanks to Evgenii Terekhov for normalizing Gemini token usage for cost tracking.
  • Thanks to Matthew Jacobs for supporting Google Antigravity IDE and CLI sessions.
  • Thanks to ArBing Xie for QClaw agent support and WorkBuddy agent support.
  • Thanks to lisiyuan656 for PostgreSQL curation metadata sync.

0.29.0

2026-05-10

New features

  • Add session support for Piebald, a database-backed coding agent. AgentsView discovers Piebald's app.db SQLite file under ~/.local/share/piebald/ (override with PIEBALD_DIR or piebald_dirs), opens it read-only, and parses each chat on demand into the standard user/assistant/tool model. Reasoning parts are surfaced as [Thinking]…[/Thinking] blocks, tool calls are mapped onto AgentsView's taxonomy, and Piebald's sub_agent_chat_id links parent tool calls to the spawned child chat so subagent expansion works inline. Per-chat incremental sync only re-parses rows whose updated_at changed.
  • Add user-configurable worktree project mappings. AgentsView normally infers a session's project from its cwd, which doesn't recognize custom worktree layouts like ~/code/{project}.worktrees/feat/<branch>/ — those sessions end up grouped under the branch name instead of the parent repo. The new Worktree Project Mappings section in Settings lets you register a path-prefix → project mapping per machine, applied to new sessions as they sync and, via an Apply button, retroactively to already-imported sessions. Mappings live in a worktree_project_mappings SQLite table scoped to the host machine, so mappings created on one machine never leak into another's view of synced sessions.

Improvements

  • Add Piebald to the supported-agents reference table in the README and to the docs.
  • Fix sync progress accounting for database-backed agents (Piebald, OpenCode, Warp, Forge): the terminal PhaseDone callback was overwriting the cumulative MessagesIndexed count with the file-only total, so the post-sync log line under-reported indexed messages.
  • Validate Piebald fork session IDs (piebald:<chat>-<row>). Stale or typoed fork IDs that resolved to a real base chat but not a real fork row previously returned mtimes and succeeded silently; they now require an exact Session.ID match in the parsed results.
  • Drop the hard-coded agent list from agentsview --help. The list went stale every time a new agent was added; the README's supported-agents table and the per-agent env vars below it stay authoritative.
  • Update GitHub Actions, Go, and frontend dependencies.

Bug fixes

  • Discover and import Codex sessions from ~/.codex/archived_sessions/ in addition to ~/.codex/sessions/, supporting both the dated live-session layout and the flat archived layout. Sessions are deduplicated by canonical session ID, with live paths preferred when a session exists in both locations.
  • Link Claude Task and Agent tool calls to their child subagent sessions when result-side toolUseResult.agentId is the only signal available (queue/progress mapping absent). The parser also preserves sibling subagent tool calls when Claude emits additive same-message.id assistant chunks, so parallel subagents under one parent message all link inline. Existing Claude archives need a full resync to pick up the populated subagent_session_id on historical rows.

Acknowledgements

  • Thanks to Matthew Jacobs for documenting Forge in the supported-agents table.
  • Thanks to Kevin Roberts for adding Piebald support.
  • Thanks to Marius van Niekerk for importing archived Codex sessions and adding configurable worktree project mappings.

0.28.0

2026-05-06

New features

  • Add session support for Forge, a database-backed coding agent. AgentsView discovers .forge.db SQLite files under ~/.forge (override with FORGE_DIR or forge_dirs), opens them read-only, and parses each conversation on demand into the standard user/assistant/tool model. Reasoning traces are surfaced as [Thinking]…[/Thinking] blocks, and Forge's nine agent-specific tool names (fs_search, patch, multi_patch, undo, remove, fetch, todo_write, todo_read, parallel) are mapped onto AgentsView's taxonomy. Per-conversation incremental sync only re-parses rows whose updated_at changed.

Improvements

  • Preview common tool inputs in the collapsed tool block header so the most meaningful field shows without expanding. TodoWrite surfaces the in-progress todo (or last todo) with a prefix; TaskCreate shows the subject; TaskUpdate shows #<id> · <status> · <subject>; Skill shows the skill name; ToolSearch shows the first line of the query; and Task/Agent/subagent calls show the description (falling back to the prompt). These previews take precedence over the first line of content, which for these tools is a generic header that hides the useful information.
  • Link Codex spawn_agent tool calls to the spawned subagent's session, so the inline subagent expander in the message viewer works the same way for Codex sessions as it already did for Claude Task calls.
  • Make git outcome metrics opt-in for agentsview stats. Outcome aggregation walks every session's working directory and shells out to git, which is slow on large repos and brittle when the cwd has moved or the repo is unavailable. Add --include-git-outcomes to opt into local commit, LOC, and files-changed totals, and --include-github-outcomes to additionally include GitHub PR counts via gh (this implies --include-git-outcomes). The GHToken is only resolved when GitHub outcomes are requested.

Bug fixes

  • Link Codex App subagent spawn events to the corresponding child session. The Codex parser now consumes both spawn_agent outputs and collab_agent_spawn_end.new_thread_id events, recognizes wait_agent calls with targets, and accepts subagent notifications that identify children via agent_path alongside the legacy agent_id. Without this, related Codex App subagent sessions did not resolve in the transcript or in the sidebar's child list.

Acknowledgements

  • Thanks to Matthew Jacobs for adding Forge agent support.
  • Thanks to Marius van Niekerk for linking Codex spawn calls to subagent sessions and linking Codex app subagents.
  • Thanks to Mike Baik for linking Claude subagent tool calls.

0.27.0

2026-05-04

New features

  • Publish official Docker images. The ghcr.io/kenn-io/agentsview multi-arch image (linux/amd64, linux/arm64) is built on tagged releases and pushes to main, and the repo ships a Dockerfile, docker-entrypoint.sh, and a docker-compose.prod.yaml example. The same image runs both agentsview serve (default) and agentsview pg serve (set PG_SERVE=1). See the Quick Start for usage.
  • Add a session status indicator that classifies each session by recency and termination state and surfaces six visual states (working, waiting, idle, stale, unclean, quiet) on the sidebar dot and the dashboard's Top Sessions table. Backed by a new termination_status column on the sessions table populated by the Claude Code and Codex parsers from per-message stop reasons. Sessions can now be filtered by status from the filter dropdown or via the new ?termination= URL parameter.
  • Use Copilot CLI's workspace.yaml name field as the session title when present, falling back to the first user message otherwise. Copilot itself writes a short generated or user-set name to that file, so sessions now show meaningful titles like "Fix login authentication bug" instead of the verbatim first prompt. Existing AgentsView display-name overrides still win.

Improvements

  • Degrade large watch trees instead of failing server startup. When the recursive file watcher hits its 8192-directory budget or the OS inotify/file-descriptor limit (EMFILE/ENOSPC), the affected root falls back to the existing 15-minute periodic sync plus a new 2-minute poll loop, and the server logs which roots are watched vs. polled. The HTTP listener now binds before the watcher is registered, so users hitting these limits no longer see startup abort with socket: too many open files.
  • Sessions, Usage, and the Analytics dashboard now share a single filter store: machine, agent, project, min user-message, and one-shot/automated toggles applied in the sidebar carry across to the Usage page header and the dashboard panels. The Usage page reuses the same SessionFilterControl widget with searchable agent and machine multi-selects (the sidebar's Status pills are sidebar- and dashboard-only).
  • Fix the README agentsview stats reference (the README previously showed the non-existent agentsview session stats form).

Bug fixes

  • Return 409 Conflict when uploading a session that is already excluded by config or sitting in the trash, instead of silently dropping the upload.
  • Allow compaction-boundary summary cards to expand in the message viewer. Long or multi-line summaries get a "Show full summary" toggle; short summaries stay inline.
  • Read the model and usage fields from OpenClaw assistant turns so agentsview usage daily --agent openclaw reports actual cost and token totals instead of $0.00.
  • Synthesize Message.ID from the message ordinal in pg serve responses. PG's messages table has a composite primary key (session_id, ordinal) and no id column, which previously left every row with id = 0 and broke Svelte's keyed {#each} rendering in the message viewer.

Acknowledgements

  • Thanks to Marius van Niekerk for fixing session and usage filter behavior and tests covering Codex assistant blockquotes.
  • Thanks to Michael Chapman for using the Copilot workspace.yaml name as the session title.
  • Thanks to zerone0x for fixing the README stats command reference, allowing compaction-boundary summaries to expand, and returning 409 for excluded or trashed uploads.
  • Thanks to juno02139 for extracting OpenClaw per-message token usage and model.
  • Thanks to Phillip Cloud for adding session termination status detection and StatusDot UI.
  • Thanks to Aaron Florey for the Docker deployment workflow.

0.26.1

2026-04-30

Improvements

  • Refresh the filter controls and active-filter displays on the Sessions, Usage, and Analytics views for clearer state and more consistent behavior across the three pages.
  • Add launchd support for running the PostgreSQL helper service on macOS.
  • Update frontend and Go dependencies.

Bug fixes

  • Fix session filter behavior in the sidebar.
  • Fix Usage page filter behavior and the selected-filter state.
  • Keep timing API response arrays non-null.
  • Disable the WebKit DMABUF renderer on Linux desktop builds to avoid rendering issues.

0.26.0

2026-04-29

New features

  • Add a Trends page for ad-hoc term-frequency line charts over your session history. Plot up to 12 terms — each with optional pipe-separated variants like cat|cats — at day, week, or month granularity, and optionally normalize counts by message volume. Backed by both SQLite and PostgreSQL, so the page works under local agentsview serve and shared pg serve deployments.
  • Replace the right-column activity minimap with a richer Session Vital Signs panel covering total wall-clock, slowest call, per-category time spent, a per-category timeline, and a chronological calls list with parallel groups bracketed and sub-agents expandable inline. Each tool block in the conversation now also shows a duration badge, and each assistant message shows a per-turn summary line.
  • Make the default date range on the Usage and Analytics dashboards rolling — pages left open across midnight roll the window forward at the next refresh tick, sync event, or manual refresh, instead of staying anchored to the day they loaded. Manual date edits or ?from=…&to=… URL parameters pin the window; preset buttons (7d, 30d, 90d, 1y) return to rolling mode.

Improvements

  • Scale call duration bars in the Vital Signs Calls list relative to the longest call in scope rather than total session wall-clock, so call-vs-call comparison stays legible in long sessions.
  • Lower the progressive-load threshold from 20,000 to 3,000 messages so large sessions render the message viewer faster — older pages lazy-load on scroll instead of all loading on session open.
  • Reuse the shared DateRangeSelector component on the Usage page for consistent presets and behavior between Analytics and Usage.
  • Faster full resync: batched SQLite writes with per-session savepoints, multi-row inserts for messages and tool calls, and a single FTS rebuild on the temp database before the atomic swap. On a 26.7k-session workload, full-resync wall-clock improved from about 1m17s to about 34s.
  • Expand Gemini ingestion to discover and parse the newer streamed session-*.jsonl format alongside the legacy .json Gemini session files.
  • Render Claude Code !cmd bash shortcut wrappers (<bash-input>, <bash-stdout>, <bash-stderr>) as code blocks in message bodies and as inline <code> in sidebar previews and breadcrumbs, instead of leaking the literal pseudo-HTML into the UI.

Bug fixes

  • Recognize managed worktree project paths — Middleman GitHub worktrees and Codex App's ~/.codex/worktrees/<id>/<repo> layout — as the owning repo, so sessions land under the right project instead of the worktree id.
  • Sync OpenCode SQLite sessions when opencode.db and the per-file storage/ layout coexist in the same root. SQLite virtual paths are used as a fallback for source lookup and single-session sync in those hybrid roots.
  • Surface Claude Code queued_command attachments — the user prompts submitted while a tool call is still running — as regular user messages in the transcript instead of dropping them. The embedded dataVersion bumps from 19 to 20 so existing databases re-parse on next startup and recover any previously missed mid-flight messages.
  • Run remote SSH sync commands through sh -c so command parsing is independent of the remote login shell and embedded single quotes are escaped safely.
  • Atomically swap the binary during self-update by staging the new binary at dstPath + ".new" (with the executable bit already set) and renaming it into place, so concurrent agentsview invocations during an update no longer hit a partially written or non-executable file.

Acknowledgements

  • Thanks to Marius van Niekerk for reusing the shared date-range selector on the Usage page and recognizing managed worktree project paths.
  • Thanks to Phillip Cloud for the rolling default date range for the Usage and Analytics dashboards, gating the frontend with svelte-check and vitest, the session-duration UX, and rendering Claude Code bash shortcut wrappers as code blocks.
  • Thanks to Aaron Florey for syncing OpenCode SQLite sessions in hybrid roots and running remote SSH sync commands through a POSIX shell.
  • Thanks to Christopher Swingley for the Gemini JSONL import fix.

0.25.0

2026-04-25

Improvements

  • Use is_automated consistently across agentsview stats totals, archetypes, distributions, and agent portfolio metrics, so the stats report uses the stored automation classification instead of mixing in older user-message-count heuristics.
  • Rename the data directory environment variable to AGENTSVIEW_DATA_DIR. The legacy AGENT_VIEWER_DATA_DIR name is still accepted as a fallback when the canonical variable is unset.
  • Build and test against Go 1.26. Source builds now require Go 1.26+ with CGO.

Bug fixes

  • Filter synthetic Copilot skill messages from parsed conversations, so injected skill context no longer affects stored transcripts, first messages, or user-message counts.

Acknowledgements

  • Thanks to Marius van Niekerk for NilAway lint checks and updating the build to Go 1.26 and fixing an arm64 desktop test flake.
  • Thanks to Tim O'Guin for filtering synthetic Copilot skill messages.

0.24.0

2026-04-23

New features

  • Add OpenCode storage-backed session support. AgentsView now auto-detects when an OpenCode root uses the per-file storage/ layout (storage/session, storage/message, storage/part) and parses the JSON files directly. The legacy opencode.db SQLite backend is still read transparently when that's what's present — see Session Discovery.
  • Add custom model pricing via [custom_model_pricing.<model>] tables in ~/.agentsview/config.toml, for models not in the LiteLLM catalog or when you want to override the catalog's rates.
  • Add configurable automation patterns via [automated] prefixes, substrings, and exact_matches in ~/.agentsview/config.toml, so single-turn sessions with first-message patterns unique to your own automation get filtered from session lists and analytics alongside the built-in roborev patterns.

Improvements

  • Broaden built-in automated-session detection to cover Claude Code conversation-title generation, warmup pings, roborev review combiner prompts, and AgentsView's own changelog generator.
  • Refresh the is_automated classification at startup, using a classifier hash that covers built-in patterns and configured [automated] patterns, so edits to automation rules and rows imported from other archives get re-labeled without a manual resync.
  • Improve Claude first-message selection in the sidebar by skipping leading /clear and /effort command envelopes so the session preview shows the next real user message instead.

Bug fixes

  • Narrow OpenCode's storage-mode file-watch root to the storage/ subtree, reducing inotify pressure and spurious watch events on binaries, logs, and caches. SQLite mode continues to watch the opencode.db parent.
  • Stop orphaned subagent/fork rows from surfacing as top-level groups in the sidebar when their parent session has been filtered or rotated off disk.
  • Fix Codex parser handling so codex exec sessions interrupted mid-run (which emit a synthetic <turn_aborted> user message) are classified and counted correctly.

Acknowledgements

  • Thanks to Eran Sandler for adding OpenCode storage-backed session support.
  • Thanks to Antoine for custom model pricing via config.

0.23.5

2026-04-20

Improvements

  • Coalesce rapid dashboard update events to cap refetch frequency and keep the UI smoother under heavy activity.

0.23.1

2026-04-19

Bug fixes

  • Usage reporting excludes cached Codex tokens from input_tokens, making token totals more accurate.

0.23.0

2026-04-19

New features

  • Add live dashboard refresh via Server-Sent Events so the Sessions and Usage views update without a full page reload when new sync data lands.
  • Add session intelligence with health signals, outcome classification, score/grade badges, a per-session signal panel, and aggregated dashboard health analytics.
  • Add the agentsview session CLI as a programmatic surface for listing, inspecting, exporting, syncing, and watching session data.
  • Add markdown export for sessions via /api/v1/sessions/{id}/md, including optional child-session depth controls.
  • Add SSH remote sync to agentsview sync so a local archive can pull session data from a remote machine over SSH.
  • Add PostgreSQL-backed usage reporting so the Usage dashboard and related endpoints work under agentsview pg serve.
  • Add agentsview stats, an experimental window-scoped reporter for session, git, and outcome activity across the local archive.

Improvements

  • Require the explicit serve subcommand to start the server; plain agentsview now shows help.
  • Show session names in the Usage page's Top Sessions by Cost table.
  • Preserve active filters when switching between the Sessions and Usage tabs.
  • Link the Usage page's Project | Model | Agent group-by selectors so the chart and attribution panel stay in sync.
  • Make incremental parsing more reliable by validating files with inode and device tracking in addition to size and mtime.
  • Rewrite the project README as a clearer user-facing guide.

Bug fixes

  • Surface the underlying login-shell probe failure reason for arm64 desktop flake cases instead of hiding the root cause.
  • Only self-heal the frontend events store on transient failures, avoiding permanent retry loops against unsupported event streams.
  • Accept raw session IDs in agentsview token-use in addition to canonical stored IDs.
  • Resolve ephemeral serve port handling correctly.
  • Parse Claude Code CLI JSON array output correctly in insight generation.
  • Recognize the "helpful assistant" prefix as an automated session.
  • Skip git-root walking for foreign-OS working directories.

Acknowledgements

  • Thanks to Marius van Niekerk for linking usage group-by selectors, migrating command tree to Cobra, adding markdown session export, resolving ephemeral serve port, showing session name in Top Sessions by Cost, and preserving filters when switching between the Sessions and Usage tabs.
  • Thanks to Jesse Robbins for correctly parsing Claude Code CLI JSON array output in insight generation.
  • Thanks to Trent Nelson for PostgreSQL-backed usage reporting.
  • Thanks to Phillip Cloud for live dashboard refresh via Server-Sent Events and self-healing the frontend events store only on transient failures.
  • Thanks to AO for inode/device tracking to validate incremental parses.

0.22.2

2026-04-13

Bug fixes

  • Correct fallback pricing for Claude Opus 4.6 so usage cost estimates use the proper $5 input and $25 output rates.

0.22.1

2026-04-13

Bug fixes

  • Keep Codex model detection consistent during incremental syncs so usage reporting stays accurate.

0.22.0

2026-04-13

Improvements

  • Extend usage cost tracking to OpenCode and Pi sessions alongside Claude Code and Codex. Their token counts now flow into the Usage dashboard and agentsview usage CLI reports.
  • Refine the Usage dashboard summary cards and cost-over-time chart for clearer cost reporting.

Bug fixes

  • Sync Codex exec sessions so execution activity appears reliably in AgentsView.
  • Fix usage accounting so total cost data stays complete across supported providers.

0.21.0

2026-04-13

New features

  • Add a token usage dashboard to the web UI for exploring cost and token totals across your agent sessions. The new /usage page shows summary cards, a cost-over-time chart, a cost attribution treemap with project/model/agent toggles, top sessions by cost, and a cache efficiency panel. Filter by project, agent, model, and date range — filter state is written back to the URL so views are shareable and bookmarkable.
  • Add backing API endpoints for the usage dashboard so scripts and external tools can fetch the same summary, time series, and attribution data the UI uses.

Bug fixes

  • Prevent some Claude usage records from being double-counted in cost and token totals.
  • Correct Opus 4.6 pricing in usage cost calculations.

0.20.0

2026-04-12

New features

  • Add agentsview usage daily and agentsview usage statusline commands that report token usage and estimated cost by day or for the current day, scoped to Claude Code and Codex sessions. Pricing is pulled from the LiteLLM catalog with an embedded fallback for offline use. See Token Usage & Costs for the full write-up, including benchmarks against ccusage.
  • Add OpenHands CLI session support. Local OpenHands conversations under ~/.openhands/conversations are discovered, synced, and rendered alongside other agents. A new shallow-watch mode is used for agents that store each conversation in its own subdirectory, so file watchers don't exhaust inotify limits.
  • Add Positron Assistant session support. Positron is a VS Codebased IDE; chat sessions under workspaceStorage/*/chatSessions/ are parsed using the VSCode Copilot format. Built-in discovery covers macOS only in 0.20.0 — Linux and Windows users need to set POSITRON_DIR or positron_dirs.
  • Filter pinned messages by the currently selected project. The Pinned page only shows pins from the active project, the count badge reflects the filtered total, and a dedicated empty state is shown when the filter yields no results.

Improvements

  • Drop the Intel macOS desktop builds regression. Release artifacts now include .dmg files for both Apple Silicon (aarch64) and Intel (x86_64) Macs, a Linux arm64 AppImage for PR artifact coverage, plus the existing Linux x86_64 AppImage and Windows .exe.
  • Stop enumerating agent names in CLI help text so the --agent flag and one-line descriptions don't go stale every time a new agent lands.

Bug fixes

  • Auto-recover the macOS desktop app when WKWebView's content process is killed during sleep/wake. A Rust-side focus probe detects a dead WebView and force-reloads it; a JavaScript visibilitychange handler pings the backend and reloads if unreachable.
  • Honor pi_dirs, cursor_project_dirs, and amp_dirs from config.toml. These arrays were previously dropped by the loader because the registry entries for Pi, Cursor, and Amp were missing ConfigKey.
  • Claude Code streaming messages were being recorded multiple times by the parser, inflating historical input-token totals by roughly 2×. The parser now deduplicates them. After upgrading, the first agentsview usage invocation triggers a full resync so historical totals are recomputed with the fix.
  • Codex sessions now capture the per-request token_count events embedded in event_msg entries, so Codex messages populate token usage (and therefore show up in agentsview usage daily) where they previously reported zero.

Acknowledgements

  • Thanks to kinglau66 for fixing the stale synced-status label and showing the exact sync time on hover.
  • Thanks to Srujun Thanmay Gupta for adding Hermes Agent session support.
  • Thanks to Mario Witte for adding Warp agent support.
  • Thanks to nodivbyzero for adding Positron Assistant session support.
  • Thanks to Michael Chapman for filtering pinned messages by the selected project.
  • Thanks to Marius van Niekerk for restoring the Intel macOS desktop build.
  • Thanks to Rajiv Shah for adding OpenHands CLI session support and shallow watch mode.

0.19.0

2026-04-08

New features

  • Add Warp agent session support, reading AI conversations from Warp's local SQLite database with tool call breakdowns and token usage.
  • Add Hermes Agent session support across CLI, Discord, webhook, and cron platforms, with per-platform project grouping and skill prefix handling.
  • Add Cortex Code session support for Snowflake's AI coding agent, parsing both embedded-history and split-file formats.
  • Add Kiro CLI and Kiro IDE session support for Amazon's AI coding assistant, including unified diff rendering for edit actions.
  • Add Cursor session history with resume (cursor agent --resume) and automatic workspace recovery via --workspace.
  • Add the ability to resume Claude sessions in Claude Desktop via the session resume menu (macOS).

Improvements

  • Add project filtering to pg push with --projects, --exclude-projects, and --all-projects flags plus config file equivalents. A new agentsview projects command lists all projects with session counts.
  • Add an opt-out for the update check via disable_update_check in config, AGENTSVIEW_DISABLE_UPDATE_CHECK=1 environment variable, or --no-update-check CLI flag.

Bug fixes

  • Fix the synced status label staying stale after a sync completes. The relative time now refreshes every 10 seconds, and hovering shows the exact sync timestamp.

Acknowledgements

  • Thanks to Jacob Struzik for resuming Claude sessions in Claude Desktop.
  • Thanks to Christian Bush for Cursor session history with resume and workspace recovery.
  • Thanks to AO for adding Cortex Code session support.

0.18.0

2026-04-02

New features

  • Import Claude.ai and ChatGPT conversations into AgentsView. Upload the zip file export from either service via the UI or CLI to bring your full conversation history — including ChatGPT images — into your local database alongside your agent coding sessions.
  • Show token usage metrics across sessions, analytics views, and exports. Session breadcrumbs display peak context and output tokens, the analytics dashboard includes output token summary cards and heatmap metrics, and CSV exports include token totals.

Improvements

  • Detect automated roborev sessions and filter them out of session lists, counts, and analytics by default. An "Include automated" toggle in the session filter dropdown opts back in.

Bug fixes

  • Keep pinned messages pinned after a session resync. Previously, re-syncing a session's messages could silently remove all pins due to cascade deletes; pins are now preserved by matching on message ordinal.
  • Reduce WebView memory usage when rendering message content by rekeying content-parser caches on message ID instead of full message text and lowering cache capacity.

Acknowledgements

  • Thanks to Trent Nelson for token-usage metrics across sessions, analytics, and exports.
  • Thanks to Michael Chapman for preserving pinned messages after a session resync.

0.17.1

2026-03-29

Bug fixes

  • pg serve automatically applies pending PostgreSQL schema migrations on startup, reducing upgrade friction and startup failures.

Acknowledgements

  • Thanks to Thomas Maloney for auto-migrating the PostgreSQL schema on pg serve startup.

0.17.0

2026-03-28

New features

  • Add a session activity minimap with click-to-navigate support for quickly jumping to activity hotspots within a session.
  • Add a resizable session sidebar so you can drag the divider to adjust the layout to fit your workflow.
  • Capture and display Codex subagent result events in session transcripts, with an expandable history of status updates per tool call.

Improvements

  • Support Cursor's nested transcript directory layout for more reliable transcript discovery.

Bug fixes

  • Restore Copilot as an insight-generation agent alongside Claude, Codex, and Gemini.
  • Fix transcript strip pill spacing in WebKit browsers.

Acknowledgements

  • Thanks to Trent Nelson for a resizable session sidebar and modeling Codex subagent result events.
  • Thanks to Marius van Niekerk for fixing transcript-strip pill spacing in WebKit.
  • Thanks to Christian Bush for supporting Cursor's nested transcript directory layout.

0.16.2

2026-03-25

Bug fixes

  • Detect Claude conversation forks across the full reply subtree so branched threads display correctly.

0.16.1

2026-03-25

Bug fixes

  • Fix Linux container builds by disabling VCS stamping in the Go build.

Acknowledgements

  • Thanks to Trent Nelson for adding managed Caddy support to pg serve and adding multi-host machine filtering and labels.
  • Thanks to Marius van Niekerk for adding URL-based session linking.

0.16.0

2026-03-24

New features

  • Add direct URL links for opening specific sessions, enabling bookmarks and sharing of session deep links.
  • Add machine labels and multi-host filtering to separate sessions by source machine in shared deployments.
  • Add focused transcript mode with a responsive header that strips intermediate tool calls and thinking blocks for easier reading.
  • Add Del as a keyboard shortcut to delete or archive the selected session.
  • Add Kimi (Moonshot AI) session support for importing and viewing Kimi conversations.
  • Add PostgreSQL push sync and a read-only server mode (pg push, pg serve) for shared multi-user deployments backed by a central PostgreSQL database.

Improvements

  • Group command palette search results by session, add a relevance/recency sort toggle, and match against session names in addition to message content.
  • Show model information in the session UI, including Codex session models, displayed in message headers.
  • Use OpenCode session titles as display names in the session list.
  • Improve the mobile layout for smaller screens with a responsive sidebar and viewport-aware keyboard shortcuts.
  • Add managed Caddy support to pg serve for simpler TLS-terminated shared deployments.
  • Publish platform-specific wheels to PyPI for easier installation via pip install agentsview.
  • Add standard macOS app menu actions for Hide and Hide Others.

Bug fixes

  • Show user messages that begin with skill or command invocations (e.g. [Skill: name]) in transcripts instead of hiding them.
  • Prevent Linux desktop app freezes with improved runtime CSP handling in the Tauri configuration.
  • Restore desktop copy, paste, and cut keyboard shortcuts through the Edit menu.
  • Fix pinned message navigation in very large sessions where the virtualizer could stop mid-scroll before reaching the target message.
  • Surface insight generation errors directly in the UI with error status and message display instead of silently failing.

Acknowledgements

  • Thanks to Thomas Maloney for PostgreSQL push sync and read-only server mode and showing user messages that begin with skill or command invocations.
  • Thanks to CL Kao for showing which model Codex sessions use.
  • Thanks to Adam Hjerpe for using the OpenCode session title as the display name.
  • Thanks to Gary Ritchie for Hide and Hide Others actions in the macOS app menu.
  • Thanks to 0xjjjjjj for the mobile responsive layout.
  • Thanks to Michael Chapman for repairing pinned-message navigation in large sessions.
  • Thanks to Li Ye for adding Kimi (Moonshot AI) agent support.
  • Thanks to Maxim Khailo for fixing a Linux desktop app freeze with layered CSP and runtime port pinning.
  • Thanks to Trent Nelson for a focused transcript mode with a responsive header.
  • Thanks to Stan Rosenberg for a Del-key shortcut to delete or archive sessions.

0.15.0

2026-03-17

New features

  • Add agentsview token-use, a CLI command that outputs machine-readable token usage data for scripts and automation.

Improvements

  • Improve cross-platform token usage reporting on macOS, Linux, and Windows.
  • Make token usage insights more consistent across application and system restarts.

Bug fixes

  • Fix cases where token usage can be attributed to the wrong process after PID reuse or restarts.

0.14.0

2026-03-15

New features

  • Add in-session search with Cmd+F / Ctrl+F and keyboard navigation between matches for finding text within a session's messages.
  • Display token usage for each session, showing input and output token counts in the session detail header.
  • Add Zencoder CLI session support for importing and viewing Zencoder conversations.
  • Add GitHub Copilot CLI resume support in the session dropdown, letting you reopen Copilot CLI sessions directly.
  • Ship Linux desktop builds as AppImages, adding Linux to the desktop app platform matrix alongside macOS .dmg and Windows .exe.

Improvements

  • Improve insight agent detection for sandboxed sessions and GitHub Copilot, producing more accurate and relevant insights.
  • Speed up session resync for larger histories, reducing the time to re-parse all session files.

Bug fixes

  • Fix updater output so the verify step starts on a new line after download progress.

Acknowledgements

  • Thanks to Aleksei Sotov for adding Zencoder CLI agent support.
  • Thanks to Michael Chapman for adding Copilot CLI resume support to session dropdown and in-session search with keyboard navigation, plus a resync performance fix.
  • Thanks to CL Kao for collecting and displaying per-session token usage.

0.13.0

2026-03-12

New features

  • Add a Settings page for appearance, terminal, GitHub, agent directory, and remote access options — centralizing configuration that was previously spread across individual modals and config file edits.
  • Add remote access with bearer token authentication, trusted public origins, and managed Caddy reverse proxy mode for secure multi-device access.
  • Organize sub-agents and teams in a collapsible tree view in the sidebar, making complex multi-agent sessions easier to navigate.
  • Update live sessions incrementally as new activity arrives, replacing full refreshes for faster real-time updates.
  • Add desktop zoom controls for adjusting the interface scale.

Improvements

  • Skip common dependency and build folders (e.g. node_modules, __pycache__, .git) during recursive watching to reduce noise and overhead.
  • Show release information in a new About dialog accessible from the header.
  • Shut down cleanly on Ctrl+C and stop auto-opening the browser on startup by default.

Bug fixes

  • Preserve original project name casing in group headers.
  • Resolve project names correctly for deleted nested worktrees.
  • Fix navigation issues in the Windows desktop app.

Acknowledgements

  • Thanks to Trent Nelson for adding trusted public origins and managed Caddy mode.
  • Thanks to Ben Sedat for excluding common dependency and build directories from the recursive watcher.
  • Thanks to TalesOfThales for a centralized settings page with remote-access authentication and a configurable API base URL, the sub-agent and team tree view with collapsible hierarchy, and preserving project-name casing in group headers.

0.12.0

2026-03-10

New features

  • Add iFlow agent support for importing and viewing iFlow conversations, including JSONL session parsing and tool calls.
  • Add a session resume menu with three actions: reopen a session, launch a terminal in its working directory, and open the directory in Finder/Explorer.
  • Ship packaged desktop releases (.dmg for macOS, .exe for Windows) as the recommended install path, with built-in auto-update support.

Improvements

  • Replace the single-select agent filter with a multi-select agent filter, allowing multiple agents to be selected at once.
  • Improve cross-platform path handling for more reliable session discovery on Windows and WSL.

Bug fixes

  • Fix Amp tool output rendering so tool results display correctly in expanded tool blocks.

Acknowledgements

  • Thanks to Michael Chapman for surfacing Copilot reasoningText as thinking blocks.
  • Thanks to CL Kao for category-based tool-metadata dispatch for cross-agent consistency.
  • Thanks to Song Li for iFlow agent support, the multi-select agent filter, and cross-platform path handling fixes.
  • Thanks to Luis Colunga for fixing missing Amp tool output in the UI.

0.11.0

2026-03-08

New features

  • Add Pi agent support for importing and viewing Pi conversations, including JSONL session parsing, thinking blocks, and tool calls.
  • Add an agentsview sync command to populate the database without starting the HTTP server. Supports a --full flag to force a complete resync.
  • Add session renaming (double-click or right-click context menu), soft delete with trash and undo, and pinned messages with a gallery view.
  • Persist starred sessions in SQLite so stars survive server restarts. Existing localStorage stars are automatically migrated on first load.

Improvements

  • Exclude single-turn sessions (one or fewer user messages) by default in session lists and analytics views to reduce noise. A new "Include single-turn" toggle in the sidebar filter dropdown opts back in.
  • Normalize tool metadata across agents so tool calls from Gemini, Pi, and other agents display with the same metadata tags as their Claude equivalents.

Bug fixes

  • Align timestamps between message headers and grouped tool call headers so they sit at the same right edge in all layouts.
  • Show Copilot reasoningText as thinking blocks instead of discarding it.
  • Extract Gemini tool results more reliably and recognize additional Gemini tool names (replace, run_shell_command, grep_search, glob, list_directory).

Acknowledgements

  • Thanks to TalesOfThales for OpenClaw agent support, removing the redundant toggle-thinking button, persisting starred sessions in SQLite, and session management with rename, trash/undo, and pinned messages.
  • Thanks to CL Kao for storing tool-result content with a category blocklist, the sync subcommand that populates data without serving, and extracting Gemini tool-result content and expanding tool-name coverage.
  • Thanks to Cesar Arze for adding Pi agent support.

0.10.0

2026-03-04

New features

  • Add Amp, VS Code Copilot, and OpenClaw agent support, including session parsing, filtering, and agent-colored display.
  • Add a Tauri-based desktop app wrapper that runs the web UI in a native window (in development, not yet released).
  • Add session starring with s key toggle and a starred-only filter for quick access to important sessions.
  • Add switchable message layouts — Default, Compact, and Stream — cycled with the l key.
  • Add collapsible sidebar grouping by agent to organize sessions by tool.
  • Add block-type filtering to toggle visibility of user messages, assistant responses, thinking blocks, tool calls, and code blocks.
  • Add a copy button on message headers to copy message content to the clipboard.
  • Add inline subagent transcript viewing for Task and Agent tool calls, loading the full subagent conversation on demand.

Improvements

  • Enrich Codex tool call display with structured formatting for bash, write_stdin, and apply_patch calls.
  • Store tool result content alongside tool calls, with configurable category blocklists to control database size.
  • Use a non-destructive database resync flow that preserves existing session data instead of dropping the database.
  • Simplify the message viewer header by removing the dedicated toggle-thinking button (use block-type filtering instead).

Bug fixes

  • Return an empty array instead of null from the sessions API when no sessions match.
  • Fix dashboard date handling in analytics and insights views for consistent date-range filtering.

Acknowledgements

  • Thanks to Luis Colunga for Amp agent support and centralizing the agent registry.
  • Thanks to Christoph Deil for returning an empty array instead of null from the sessions API and adding VSCode Copilot agent support.
  • Thanks to thellert for subagent transcript viewing for Task and Agent tool calls.
  • Thanks to TalesOfThales for the per-message copy button, block-type filtering by content category, collapsible sidebar grouping by agent, switchable message layouts (default, compact, stream), and session starring with localStorage persistence.

0.9.0

2026-02-27

New features

  • Add Cursor agent support, including parsing Cursor sessions and filtering them in the UI.

Improvements

  • Show tool call parameters in expanded tool blocks for better execution visibility.
  • Restrict CORS to localhost origin to improve local security defaults.

Bug fixes

  • Fix install.sh version parsing so installs work correctly with minified release JSON.

Acknowledgements

  • Thanks to procrypt for restricting CORS to the localhost origin.

0.8.0

2026-02-26

New features

  • Replace the project dropdown with a filterable typeahead to find and switch projects faster.

Improvements

  • Improve resync reliability so session data stays in sync more consistently.
  • Polish startup UX to make initial loading clearer and smoother.

Bug fixes

  • Fix Gemini message parsing and display for thinking blocks.
  • Fix text selection inside tool call blocks.

Acknowledgements

  • Thanks to CL Kao for the session DAG view with fork detection and subagent linking.
  • Thanks to Marius van Niekerk for fixing text selection inside tool-call blocks and the filterable project typeahead.

0.7.0

2026-02-25

New features

  • Add a session DAG view that detects forks and shows branch relationships.
  • Add inline subagent linking so parent and subagent conversations are connected in context.
  • Add an All option to the Analytics date range picker.
  • Add a Hide unknown filter to reduce noise from unclassified items.

Improvements

  • Improve Gemini project resolution for more accurate project attribution.
  • Update Gemini model handling to support newer model variants.

Bug fixes

  • Fix Analytics message counting so totals match actual message data.
  • Fix agent color assignment for more consistent visual identification.

0.6.0

2026-02-25

New features

  • Support multiple Claude project directories, including mixed Windows/WSL setups.
  • Add session filters to quickly narrow the session list and analytics views.
  • Add in-app resync so you can refresh data without restarting AgentsView.
  • Support theme control via postMessage when embedding AgentsView in an iframe.

Improvements

  • Condense watcher warnings to reduce noisy sync notifications.
  • Add a polling fallback for unwatchable directories to keep sync running reliably.

Bug fixes

  • Fix an app freeze when search returns no results.
  • Fix Gemini project detection so sessions map to the correct project.

0.5.0

2026-02-25

New features

  • Add Copilot CLI session support so Copilot CLI conversations appear in AgentsView.
  • Add OpenCode session history support so OpenCode conversations can be synced and viewed.
  • Show a copyable Session ID in the session detail header for quicker sharing and lookup.

Improvements

  • Improve session source classification and sync coverage for newly supported tools.
  • Follow symlinks during project discovery so linked workspaces are detected correctly.
  • Improve interrupted-run recovery so valid sync results are preserved more reliably.

Acknowledgements

  • Thanks to Shreyas Karnik for the copyable Session ID in the session detail header.
  • Thanks to CL Kao for following symlinks when discovering project directories.
  • Thanks to thellert for theme control via postMessage for iframe embedding.
  • Thanks to Nat Torkington for multi-directory Claude project support (including mixed Windows/WSL), condensed watcher warnings, and a polling fallback for unwatchable directories.

0.4.1

2026-02-24

Improvements

  • Speed up sync to reduce startup and refresh time.
  • Improve startup logging to make initialization progress clearer.

Bug fixes

  • Fix insights generation/store behavior to improve stability and accuracy.
  • Restore CLAUDE_NO_SOUND=1 for Claude subprocesses to keep background runs silent.

0.4.0

2026-02-24

New features

  • Add AI-powered Insights with multi-agent generation for session analysis.
  • Introduce an Insights page to view and manage generated insights.
  • Add structured tool-call metadata for clearer, richer tool output display.

Improvements

  • Normalize worktree project names so sessions stay grouped consistently across worktrees.
  • Improve message and tool block presentation for better readability.

Bug fixes

  • Fix insight generation authentication failures.
  • Skip oversized JSONL lines during ingest so one bad line no longer fails the whole session.
  • Embed the IANA timezone database to improve timezone support on Windows.

0.3.2

2026-02-23

New features

  • Add session continuity via sessionId chaining, so resumed conversations stay linked as one ongoing session across sync/import.

Improvements

  • Improve sidebar session list and item behavior to better represent continued sessions.
  • Make session list state updates and virtualization smoother for larger histories.

Bug fixes

  • Fix cases where continued conversation segments appear as separate sessions instead of a single chain.
  • Fix Claude parsing/sync edge cases so session links persist reliably.

0.3.1

2026-02-22

Bug fixes

  • Keep exported and gist HTML styling in sync with current app design tokens for consistent visuals.

0.3.0

2026-02-22

New features

  • Add an Activity Timeline in Analytics to visualize session activity over time.

Improvements

  • Improve the message viewer with clearer rendering for code blocks, tool calls, and thinking content.
  • Refine the analytics experience for easier session exploration and readability.
  • Improve sync performance to load and refresh data faster.
  • Update project dependencies to improve compatibility and stability.
  • Standardize session count formatting with explicit en-US locale handling for consistent display.

0.2.2

2026-02-22

Improvements

  • Reduce Hour-of-Week heatmap cell size by 20% for a denser, easier-to-scan analytics view.

Bug fixes

  • Fix available-port probing to bind the correct host, improving startup reliability.
  • Ensure builds compile without frontend assets by providing go:embed stubs.

0.2.1

2026-02-21

Improvements

  • Improve Codex output parsing so edge cases are handled more reliably.

Bug fixes

  • Make installer exit on SHA256SUMS download failures to prevent incomplete or unverified installs.

0.2.0

2026-02-21

New features

  • Render Codex function calls as informative tool blocks in session views and exports.

Improvements

  • Make the activity calendar full-width and centered for a cleaner analytics layout.
  • Increase heatmap cell size (about 20%) to improve readability.
  • Combine day and hour activity charts into a more streamlined analytics view.
  • Default analytics to a 1-year date range instead of 30 days.
  • Match gist/export styling with the app's visual theme for consistent output.
  • Filter out system-injected user messages from the message list display.

0.1.0

2026-02-21

New features

  • Launch AgentsView with an integrated Go backend and Svelte frontend.
  • Add analytics as the home screen with a persistent sidebar.
  • Add rich dashboard views, including summary cards, activity timeline, project breakdown, top sessions, and session shape metrics.
  • Add hour-of-week heatmap analytics with timezone display and interactive filtering.
  • Add tool-aware analytics, including tool usage, thinking/tool counts, velocity metrics, and agent comparison.
  • Add analytics permalinks, drill-down navigation, transitions, and CSV export.
  • Add Gemini CLI session ingestion.
  • Add tool-call ingestion and parsing (including Codex function calls) for deeper analytics.
  • Add self-update support and cross-platform install scripts.
  • Add frontend/backend version tracking with mismatch detection.

Improvements

  • Improve dashboard usability with centralized active filter badges, project filtering, top sessions, and layout updates.
  • Improve session pane performance and virtualized list stability for deep scrolling.
  • Load sessions and selected session messages fully by default for smoother browsing.
  • Improve search UX by scrolling to and highlighting the matched message.
  • Keep sessions newest-first while showing messages in chronological order.
  • Refresh branding with the AgentsView name, periscope logo, and favicon.
  • Update assistant message colors to a warmer, higher-contrast palette.

Bug fixes

  • Fix analytics drill-down behavior so heatmap and project clicks filter and navigate correctly.
  • Fix prune --max-messages so it counts user messages correctly.
  • Fix Claude parsing to skip system-injected user messages.
  • Fix chart panels so they stay within dashboard grid bounds.
  • Fix route and query handling to reject invalid routes and empty filters.
  • Fix concurrent load/search race conditions to keep results consistent.
  • Harden markdown sanitization to prevent XSS and preserve escaped content.
  • Fix theme persistence when browser localStorage is unavailable.
  • Fix session-loading edge cases, including short session IDs and empty Gemini directories.
  • Fix Darwin release builds by targeting the macOS 15 runner.