Security model
AI Model Directory is provider-supplied metadata. It is useful for model selection, defaults, and comparison, but it should not be treated as a billing authority or a guarantee that a provider is telling the truth.
What the updater protects
- Provider endpoints are hardcoded in source.
- Fetched data is validated against a strict Zod schema before writing files.
- Model IDs are normalized into safe directory names.
- Conflicting normalized model directories are resolved deterministically.
- Terminal output is sanitized before logging.
- Network fetches have a 60 second timeout.
- IDs and names are length-limited and reject raw control characters.
- Removed upstream models are deleted unless
metadata.tomlsetspreserve = true. extendspaths are restricted to paths insidedata/providers.- Provider-supplied code, shell commands, and HTML are not executed.
What your app should still do
- Treat prices and capabilities as a strong default, not a source of truth.
- Keep provider API keys in your own backend or secret store.
- Handle missing models and changed limits gracefully.
- Check provider billing pages for critical cost decisions.
What we don't vouch for
AI Model Directory lists what providers publish. It does not test or endorse any provider, and it is not affiliated with them. In particular:
- Speed, uptime, rate limits, and output quality vary by provider and are not measured.
- A provider may serve a quantized, distilled, or otherwise modified version of a model under the same name.
- Some listings are resellers, routers, or free tiers with limits that are not captured here.
- Data handling, retention, and privacy terms differ between providers.
- Data is refreshed daily, so prices and limits can be out of date between updates.
Check a provider's own docs, pricing, and terms before sending it production traffic or sensitive data.
Reporting issues
If a provider entry looks suspicious or incorrect, open an issue or pull request with a link to the provider's official docs.