Providers ยท Lesson 1
Why CLIProxyAPI Is The Operational Route
You can tell the difference between a configured provider and a proven provider.
Simple layer
OpenAI-compatible is not the same as Codex-compatible. Codex custom providers call `/responses`; Z.AI and Moonshot direct endpoints returned 404 there, while CLIProxyAPI translated the route successfully.
Technical layer
Direct Z.AI proof failed at `https://api.z.ai/api/paas/v4/responses`. Direct Moonshot failed at `https://api.moonshot.ai/v1/responses`. The proven path is `http://127.0.0.1:8317/v1` with `model_provider = "cliproxyapi"`.
Real command
codex exec -p provider-kimi-for-coding --skip-git-repo-check --ephemeral -o work/smoke-kimi-for-coding.txt 'Respond exactly: PROVIDER_OK provider-kimi-for-coding'
Practice with feedback
What did the direct Z.AI and Moonshot smokes prove?
Local proof
SCOPE.md LOOP-LOG.md ~/.codex/provider-registry.json ~/.codex/provider-*.config.toml