# `Agentic.LLM.UsageManager`

Periodically polls every enabled provider that implements
`fetch_usage/1` and caches the latest snapshot. Worth's status
sidebar reads from this cache.

## Public API

    Agentic.LLM.UsageManager.snapshot()                    # all known usages
    Agentic.LLM.UsageManager.for_provider(:openrouter)     # one provider
    Agentic.LLM.UsageManager.refresh()                     # async
    Agentic.LLM.UsageManager.refresh_provider(:openrouter) # async

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `for_provider`

```elixir
@spec for_provider(atom()) :: Agentic.LLM.Usage.t() | nil
```

Return the cached snapshot for one provider, or nil.

# `refresh`

Trigger an async refresh of every enabled provider.

# `refresh_provider`

Trigger an async refresh of one provider.

# `snapshot`

```elixir
@spec snapshot() :: [Agentic.LLM.Usage.t()]
```

Return all cached usage snapshots.

# `start_link`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
