Codex model metadata not found: what to check
A fallback-metadata warning does not by itself establish that a model request was rejected. In one historical API-key report, prompts still succeeded. Check the actual request result and record your model, provider and client version before changing configuration. The reports do not establish a universal fix or measured performance loss.
Start here
Check whether a short request actually succeeds, then record the warning and exact model identifier.
How to tell this is your situation
- The CLI prints a missing-model-metadata warning followed by fallback wording.
- The selected API-key model appears as Custom in the IDE, as described in issue #34739.
- You need to check whether the request completed: that reporter received successful answers despite the warning.
- A separate rejection, capacity message or broken stream may also be present. Preserve that message rather than treating metadata as its proven cause.
The July report names Linux CLI 0.145.0 and VS Code extension 26.715.61943. Issue #12100 records similar wording on Windows CLI 0.104.0 with a custom provider. These builds and model names describe historical evidence; they are not recommendations for your current setup.
Step-by-step checks
- Separate the warning from the result. Save the warning and exact model identifier. If practical, try one short request that does not change files. Record whether it completes, fails, or remains pending. Do not infer failure solely from the warning.
- Identify the affected client. Record its version, operating system and sign-in method. If you already use both CLI and IDE, note whether the same situation occurs in each. You do not need to create another account or install another client for this comparison.
- Read the selected model and provider. The configuration reference defines
modelas the selected identifier andmodel_provideras the provider ID, defaulting toopenai. Use the configuration-location guide to find the relevant configuration. Inspect values without sharing credentials. - Record any catalog override without inventing one. Current documentation describes optional
model_catalog_json, loaded at startup, with a selected profile-file override. A contributor comment says this setting was added after 0.104.0 for 0.105.0. Do not expect current configuration features in the older reported build. An override’s presence is not proof of the cause. - Route an actual failure separately. A response saying the model is unsupported belongs to the model-access guide. If your configuration itself produces parsing errors, use the config.toml troubleshooting guide. A model label, a warning and a rejected request are different observations.
If it is still not working
- Collect the warning, subsequent error and short-request outcome together. Reporting only the warning omits the evidence needed to investigate a failed request.
- Describe the model/provider/client combination and whether a catalog override exists. Share only relevant redacted settings, not an authentication file, complete configuration or API key.
- Check the linked issue discussion for an applicable explanation before making changes. Neither a closed report nor another user’s catalog workaround establishes a repair for every model and build. Preserve your current configuration before any later experiment.
FAQ
Does this warning mean my model request failed?
Not necessarily. The July API-key reporter received successful answers while seeing the warning and a Custom label. That observation does not guarantee your session works. Check your own request outcome and keep any separate failure message.
Should I delete the model cache or copy someone else’s catalog?
This guide does not recommend either action. The sources do not establish a universal repair. Record your existing model, provider and catalog settings first; a copied catalog may describe a different model or environment. Do not fabricate metadata just to remove a warning.
Why does model_catalog_json not help on CLI 0.104.0?
A repository contributor stated that the setting was added after that release and would be included in 0.105.0. That historical feature boundary explains why the old build cannot be assumed to support it. It does not identify a version that fixes every fallback warning.
Known limits of this guidance
The behavior is reported, not reproduced here. The sources do not measure performance loss in your session or establish a universal cause, repair or warning-free version. Model availability and account eligibility must be checked separately from these historical examples.
This guide is part of our Codex sessions troubleshooting.
First check whether this is a Codex service-side problem → View live Codex status.
Useful Codex tools
Sources
Each source lists what it is used to support. Sources are re-read on the review schedule, not continuously.
VS Code extension shows an API model as Custom and CLI falls back to missing metadata
A Linux API-key user reported the literal warning and Custom label while requests still succeeded on the listed CLI and extension builds.
Model metadata fallback warning with a custom provider
A Windows CLI 0.104.0 custom-provider user reported the fallback wording; the report does not establish a fixed version.
The documented model, model_provider and optional model_catalog_json settings, including profile catalog overrides.
Contributor explains when model_catalog_json was introduced
A repository contributor stated that model_catalog_json was added after CLI 0.104.0 and would be included in 0.105.0; this is not a universal warning-fix claim.
Related guides
How this page is checked
- Evidence level
- Reported - based on public reports, not reproduced here
- Last reviewed
- 2026-09-29
- Content updated
- 2026-09-29
- Symptoms indexed
-
- The CLI prints a warning about missing model metadata
- The warning says Codex is defaulting to fallback metadata
- The IDE labels a selected API-key model as Custom
Reviewer note
September 28 draft independently reviewed on September 29 against the original issue bodies, comments and current configuration reference. Applied the new guide structure and added the contributor's historical catalog-setting boundary. No universal cause, measured performance impact or general fix was reproduced.