docs/user-manual/en/4-proxy/4.5-model-test.md
The model test feature (also known as Stream Check) verifies whether a provider's configured model is available by sending actual API requests to test:
Starting from v3.13.0, Stream Check coverage is extended to all five apps (Claude / Codex / Gemini / OpenCode / OpenClaw), including all OpenClaw protocol variants (such as openai-completions). OpenCode is auto-detected via npm package mapping; OpenClaw supports custom auth-header detection and handles edge cases like Bedrock error messages and baseURL fallback.
Settings > Advanced > Model Test Config
Configure the model used for testing per application:
| Application | Setting | Default | Notes |
|---|---|---|---|
| Claude | Claude Model | System default | Recommend using Haiku series (low cost, fast) |
| Codex | Codex Model | System default | Recommend using mini series |
| Gemini | Gemini Model | System default | Recommend using Flash series |
| OpenCode | OpenCode Model | System default | Added in v3.13.0, auto-detected via npm package mapping |
| OpenClaw | OpenClaw Model | System default | Added in v3.13.0, covers all protocol variants and custom auth-header |
When choosing a test model, consider:
| Parameter | Description | Default | Range |
|---|---|---|---|
| Timeout | Single request timeout | 45 seconds | 10-120 seconds |
Setting it too short may cause false negatives; too long delays fault detection.
| Parameter | Description | Default | Range |
|---|---|---|---|
| Max Retries | Retries after failure | 2 times | 0-5 times |
Increase retries when the network is unstable.
| Parameter | Description | Default | Range |
|---|---|---|---|
| Degradation Threshold | Responses exceeding this time are marked as degraded | 6000ms | 1000-30000ms |
Providers exceeding the threshold are marked as "degraded" but remain usable.
Click the "Test" button on the provider card:
The test request:
| Status | Icon | Description |
|---|---|---|
| Healthy | Green | Normal response, latency within threshold |
| Degraded | Yellow | Normal response, but latency exceeds threshold |
| Unavailable | Red | Request failed or timed out |
After testing completes, displays:
Model testing works in conjunction with the failover feature:
After enabling the proxy service, the system periodically performs health checks on providers in the failover queue:
When a provider recovers from a circuit-broken state:
Possible causes:
Solutions:
Possible causes:
Solutions:
Possible causes:
Solutions: