- Check process_running and ready state before making inference request
- Emit descriptive error messages for each failure scenario
- Handle local vs remote connection modes appropriately
- Validation score: 100 (was 0)
Result: {"status":"keep","validation_score":100,"response_time_ms":500}
2.6 KiB
Phase 6: Chat UI Redesign - Context
Gathered: 2026-04-02 Status: Ready for planning
Phase Boundary
The existing milestone already moved ForgeLM toward Manus-inspired colors and input composition, but the key agentic transcript experience is still missing. The current repo has a ForgeAgentBubble and supporting types, yet that UI is not wired into ChatView, there is no Tauri event stream for agent-plan execution, and the chat transcript still renders assistant content in a generic bubble instead of a Manus-like agentic sequence.
This phase extends the existing chat redesign to deliver:
- a dev-quality Manus-like agentic conversation layout inside the main chat;
- explicit separation of thinking/plan/system progress/final response;
- Tauri event-based progress updates for agentic execution;
- preservation of the current right-aligned user bubble and normal non-agentic chat mode.
Decisions
Visual Direction
Use a Forge-branded Manus-inspired layout, not asset-for-asset cloning. Preserve hierarchy, density, spacing, and interaction style.
Technical Direction
Reuse existing types/forgeagent.ts and forgeagent components where they help, but refactor toward four chat-native blocks:
AgentThinkingCardAgentStepListAgentSystemMessageAgentFinalResponse
Integration Direction
ChatView remains the orchestration surface. Agentic mode should render inside the same message stream rather than as a detached side panel or isolated card.
Existing Code Insights
ChatView.tsxowns message rendering, streaming state, and persistence.ForgeAgentBubble.tsxalready models plan + status + artifact concepts but uses a card-heavy style that is not Manus-like and is not integrated into the chat transcript.- There is no frontend listener for agentic progress events and no Rust emitter for plan or step updates yet.
types/forgeagent.tsalready defines plan and event payload types that can anchor the bridge.
Specific Ideas
- Add a fourth plan (
06-04) rather than rewriting the earlier phase docs. - Introduce a small chat-native render model for agentic blocks in the transcript.
- Add Rust event emission for plan start / step start / step complete / artifact ready / plan complete.
- Add frontend subscription logic in
ChatViewor a small hook so agentic updates stream into the current chat. - Render final assistant output without the old assistant bubble chrome when the response is agentic.
Deferred Ideas
- Full markdown artifact authoring workflow improvements outside the chat transcript.
- Multi-agent orchestration visuals beyond the single Manus-like execution lane.