A patch release for a diagnostic bug that could cost you ten minutes and look
like a Model Peer hang.
Install
curl -fsSL https://raw.githubusercontent.com/makedirectory/ModelPeer/v0.5.1/install.sh | bashDocs: https://modelpeer.app
Fixed
model-peer doctor printed "cached OAuth is verified on first request" whenever
no auth environment variable was set, without reading the sign-in method Gemini
actually recorded in ~/.gemini/settings.json.
The state that hid is the worst one. Configured for an API key with no key
present, Gemini does not error — headless, with stdin closed, it blocks on an
auth prompt nobody can answer, and a review simply hangs.
| auth state | result |
|---|---|
deliberately wrong GEMINI_API_KEY |
fails in ~1 second, HTTP 400 |
| no key at all | hangs indefinitely |
So the difference between "misconfigured" and "hung forever" was one missing
environment variable, and doctor called that state healthy. It now names it:
Gemini authentication: BROKEN — configured for an API key, but neither GEMINI_API_KEY nor
GOOGLE_API_KEY is set. Headless calls will hang rather than
fail, because Gemini waits on a prompt that stdin cannot
answer. Export a key, or re-run `gemini` and pick another
sign-in method.
API key, Vertex AI, OAuth, and not-yet-configured report distinctly. A fresh
install with no settings file is not reported as broken.
This matters because Gemini works fine interactively in exactly this state — it
just asks you for the credential. Only the headless path Model Peer uses hangs.
How it was found
By doctor --probe, shipped one release earlier. The probe reported Gemini as
unverified while Claude and Codex passed, and the cause turned out to be local
auth rather than anything in Model Peer — which is exactly the separation the
probe was added to make.
model-peer doctor --probe is the fastest way to check your own setup.
Also
tools/bump-version.sh now refreshes this repo's own installed skills, which
stamp the version into their managed header and previously showed as stale on
every bump.
Full notes in CHANGELOG.md.
Full Changelog: v0.5.0...v0.5.1