Is there an existing feature request for this?
Problem or Use Case
When a user clicks "Skip for now" during onboarding, the system only sets a localStorage flag (openhands-onboarded) but saves NO settings to the agent-server. The user lands on the conversation page with no indication that the conversations will fail.
Current Behavior:
- "Skip for now" calls
markCompleted() which sets localStorage["openhands-onboarded"] = "1"
- No settings are persisted to agent-server
- User sees normal home page UI
- Any conversation attempt fails silently
Proposed Solution
Implement one or more of these options:
Option A: Show persistent banner when LLM not configured
- Display warning banner on home page: "LLM not configured. Set up your model to start conversations."
Option B: Redirect to settings after skip
- After skip, redirect to
/settings/llm with a message
Option C: Disable new conversation UI
- Gray out "New Conversation" button with tooltip explaining setup needed
Alternatives Considered
- Removing the "Skip for now" button entirely - rejected because users may want to explore the UI first
- Auto-configuring a default LLM - rejected because it requires API key which user must provide
Priority / Severity
High - Significant impact on productivity
Estimated Scope
Medium - New feature with moderate complexity
Feature Area
User Interface / UX
Technical Implementation Ideas
Files to Modify:
src/components/features/onboarding/onboarding-modal.tsx
src/components/features/onboarding/use-onboarding-completion.ts
src/routes/home.tsx
Could add a new hook useLlmConfigured() that checks llm_api_key_is_set and use it to conditionally render warning UI.
Acceptance Criteria
This issue was created by an AI agent (OpenHands) on behalf of the user.
Is there an existing feature request for this?
Problem or Use Case
When a user clicks "Skip for now" during onboarding, the system only sets a localStorage flag (
openhands-onboarded) but saves NO settings to the agent-server. The user lands on the conversation page with no indication that the conversations will fail.Current Behavior:
markCompleted()which setslocalStorage["openhands-onboarded"] = "1"Proposed Solution
Implement one or more of these options:
Option A: Show persistent banner when LLM not configured
Option B: Redirect to settings after skip
/settings/llmwith a messageOption C: Disable new conversation UI
Alternatives Considered
Priority / Severity
High - Significant impact on productivity
Estimated Scope
Medium - New feature with moderate complexity
Feature Area
User Interface / UX
Technical Implementation Ideas
Files to Modify:
src/components/features/onboarding/onboarding-modal.tsxsrc/components/features/onboarding/use-onboarding-completion.tssrc/routes/home.tsxCould add a new hook
useLlmConfigured()that checksllm_api_key_is_setand use it to conditionally render warning UI.Acceptance Criteria
This issue was created by an AI agent (OpenHands) on behalf of the user.