ReadonlynameStable, human-readable identifier — e.g. claude, gateway-openrouter.
Optional ReadonlyproviderOptional vendor-family hint — anthropic / openai / google / etc.
Used to pre-tag entries when the source's own model ids don't carry
a provider/ prefix (Anthropic API, Google API).
One adapter (CLI or API) that can be asked what models it currently has. Exists so this cache doesn't have to know about IModelAdapter vs ICliAdapter — both can adapt themselves to this minimal surface.