hermes-agent/web/src
kshitijk4poor 5fb143169b feat(dashboard): track real API call count per session
Adds schema v7 'api_call_count' column. run_agent.py increments it by 1
per LLM API call, web_server analytics SQL aggregates it, frontend uses
the real counter instead of summing sessions.

The 'API Calls' card on the analytics dashboard previously displayed
COUNT(*) from the sessions table — the number of conversations, not
LLM requests. Each session makes 10-90 API calls through the tool loop,
so the reported number was ~30x lower than real.

Salvaged from PR #10140 (@kshitijk4poor). The cache-token accuracy
portions of the original PR were deferred — per-provider analytics is
the better path there, since cache_write_tokens and actual_cost_usd
are only reliably available from a subset of providers (Anthropic
native, Codex Responses, OpenRouter with usage.include).

Tests:
- schema_version v7 assertion
- migration v2 -> v7 adds api_call_count column with default 0
- update_token_counts increments api_call_count by provided delta
- absolute=True sets api_call_count directly
- /api/analytics/usage exposes total_api_calls in totals
2026-04-22 05:51:58 -07:00
..
components fix: imports 2026-04-19 19:22:07 -04:00
hooks feat: web UI dashboard for managing Hermes Agent (#8756) 2026-04-12 22:26:28 -07:00
i18n feat: add buttons to update hermes and restart gateway 2026-04-21 09:01:23 -04:00
lib feat(dashboard): track real API call count per session 2026-04-22 05:51:58 -07:00
pages feat(dashboard): track real API call count per session 2026-04-22 05:51:58 -07:00
plugins fix: add nous-research/ui package 2026-04-19 10:48:56 -04:00
themes fix: add nous-research/ui package 2026-04-19 10:48:56 -04:00
App.tsx fix: imports 2026-04-19 18:52:04 -04:00
index.css fix: add nous-research/ui package 2026-04-19 10:48:56 -04:00
main.tsx fix: add nous-research/ui package 2026-04-19 10:48:56 -04:00