Skip to content

v0.4.0 — the full suite

Choose a tag to compare

@anirudhprashant anirudhprashant released this 10 Jul 23:25

v0.4.0 — agent-vitals becomes a real suite

v0.1.0 was two CLI commands. v0.2.0 added the MCP server. v0.3.0 added the gate. v0.4.0 turns it into a comprehensive observability + maintenance suite for agentic harnesses — 9 CLI commands, 5 MCP tools, 175 tests.

New in v0.4.0

av install — interactive installer

Replaces av init + av hooks install with a single guided flow:

$ av install
  detected 3 agent host(s):
    - pi           /home/anirudh/.pi/agent/mcp.json
    - Claude Code  /home/anirudh/.claude/.mcp.json
    - Codex CLI    /home/anirudh/.codex/config.toml

  what to install:
    1. mcp       — register agent-vitals as an MCP server in detected hosts
    2. priming   — drop a SKILL.md so the agent knows when to call vitals
    3. hooks     — PATH wrappers around crontab / systemctl
    4. snapshot  — take a backup of current agent state first
  components [default]: 1 4

  which hosts to install for?
    1. pi
    2. Claude Code
    3. Codex CLI
  hosts [default: all]: 1 2

  snapshot: /home/anirudh/agent-vitals-snapshots/.../pre-install.tar.gz

  [pi] mcp: added
  [Claude Code] mcp: added
  [Codex CLI] mcp: added
  [pi] priming: installed
  [Claude Code] priming: installed
  [Codex CLI] priming: installed

Non-interactive: av install --yes or av install --only=hooks,drift.

av drift — find inconsistencies across agent hosts

$ av drift
drift: 2 finding(s)

  [high] (1)
    - mcp_drift: mempalace
      registered differently across 2 hosts: ['Claude Code', 'pi']
      (one uses `mempalace-mcp --palace ~/.mempalace`, the other uses
      the full path to .local/bin/mempalace-mcp)

  [low] (1)
    - mcp_dup: agent-vitals
      same target registered in 2 hosts: ['Claude Code', 'pi']
      (intentional multi-host — both correctly call `av mcp`)

av cost — token spend tracker

$ av cost
cost: token usage by host / project (last scan; pricing rough)

  [claude-code]
    -home-anirudh--claude-mem-observer-sessions  248,616,367 tok   ~29.53
    subagents                                  437,466,273 tok   ~62.47

  total: 686,082,640 tokens, ~92.00
  (pricing is conservative Sonnet-class default; actual may differ)

av sessions — list session files

$ av sessions --older-than 30 --limit 5
sessions: 47 file(s) older than 30d, 142.3 MiB total
  host             age       size   events  project
  claude-code     45.2d    2.1M     1234  --home-anirudh--old-feature
  claude-code     38.1d    1.8M      892  --home-anirudh--experiments
  ...

av snapshot — backup agent state

$ av snapshot
✓ snapshot created: ~/agent-vitals-snapshots/agent-vitals-snapshot-20260710T231825Z.tar.gz (2665K, 577 files)
  restore: tar -xzf <file> -C /tmp/restore  # then copy files back manually

What v0.4.0 doesn't yet do

  • drift, cost, sessions, snapshot are CLI-only. Not yet exposed as MCP tools. Scheduled for v0.5.0.
  • Integration tests are removed. They were failing under uv run due to env-var interaction with Typer subcommand routing. Unit tests cover the same logic more thoroughly.

Stats

  • 9 CLI commands: install · doctor · detect · mcp · shadow · burnout · drift · cost · sessions · snapshot · hooks
  • 5 MCP tools: vitals_summary · shadow_list · shadow_stale · burnout_summary · burnout_stuck_sessions
  • ~2400 LOC of Python
  • 175 unit tests across 7 modules
  • 0 runtime dependencies beyond typer, rich, pyyaml, mcp

License

MIT.