Description
When a session or spawn flow is inheriting the OpenClaw default model / effort, Nerve currently surfaces the resolved concrete model (or a mismatched fallback) instead of the inherited selection. User-visible result: the UI can make an inherited default look like an explicit override.
This showed up in two places:
- the chat model/effort controls for sessions using inherited defaults
- the spawn dialog model picker for new agents/subagents
On our setup where the inherited defaults should read as primary model and medium effort, the UI was not consistently showing that inherited state and instead became research and low, which is a model nickname and a thinking value that do not reflect our default primary settings in the openclaw.json config file.
Steps to Reproduce
- Configure OpenClaw / Nerve with a primary model and a default thinking level.
- Open a Nerve session that inherits those defaults instead of overriding them.
- Open the chat model / effort controls, or open the spawn dialog for a new agent.
- Observe the displayed model / effort selection does not match the primary model selection and default thinking level.
Expected Behavior
Inherited defaults should remain visible as inherited defaults in the UI:
- model should show
primary to match the openclaw.json config
- effort should reflect the inherited default (
medium in the validated test case)
The UI should not imply that the user explicitly selected some other concrete model and thinking level unless they actually did.
Actual Behavior
The UI could display a concrete provider/model value, or otherwise lose the inherited-default state, making the selection look explicitly overridden.
Screenshots / Logs
No screenshot attached here, but the bug has been reproduced and fixed on a clean branch that is directly based on master.
Environment
- OS: Zorin OS 18 Pro (Linux)
- Node: v25.4.0
- Nerve version: 1.5.2
- OpenClaw version: v2026.3.8
- Browser: Chrome-based environment
Description
When a session or spawn flow is inheriting the OpenClaw default model / effort, Nerve currently surfaces the resolved concrete model (or a mismatched fallback) instead of the inherited selection. User-visible result: the UI can make an inherited default look like an explicit override.
This showed up in two places:
On our setup where the inherited defaults should read as
primarymodel andmediumeffort, the UI was not consistently showing that inherited state and instead becameresearchandlow, which is a model nickname and a thinking value that do not reflect our default primary settings in theopenclaw.jsonconfig file.Steps to Reproduce
Expected Behavior
Inherited defaults should remain visible as inherited defaults in the UI:
primaryto match the openclaw.json configmediumin the validated test case)The UI should not imply that the user explicitly selected some other concrete model and thinking level unless they actually did.
Actual Behavior
The UI could display a concrete provider/model value, or otherwise lose the inherited-default state, making the selection look explicitly overridden.
Screenshots / Logs
No screenshot attached here, but the bug has been reproduced and fixed on a clean branch that is directly based on
master.Environment