Use this checklist to verify the frontend-backend integration is working correctly.
- Backend is running on port 3001
- Frontend is running (usually port 5173)
- Browser is open to frontend URL
- DevTools open (F12) for debugging
Steps:
- Open the frontend in browser
- Look at the master node (top center)
- Check connection indicator (top right of node)
Expected:
- Green dot visible
- Text says "Connected"
- Console shows: "Connected to WebSocket server"
If failed:
- Check backend is running
- Check WebSocket URL is correct
- Check browser console for errors
Steps:
- Type in master node: "Hello, who are you?"
- Press Enter or click Submit
- Watch the tree area
Expected:
- Agent node appears below master
- Node shows "RUNNING" status (blue border)
- Text starts appearing in the node
- Text streams word by word (not all at once)
- Node eventually turns green (COMPLETED)
- "✓ FINAL ANSWER" badge appears
If failed:
- Check browser console for messages
- Check DevTools → Network → WS for messages
- Check backend terminal for errors
Steps:
- Type: "What's the weather like?" (intentionally vague)
- Submit and wait for agent to ask for clarification
- Node should turn orange
- Input field should appear with question
Expected:
- Node turns orange border
- Status shows "AWAITING_USER"
- Question appears in node
- Input field is visible
- Can type in input field
Steps to continue: 5. Type: "Paris" in the input 6. Press Enter or click Send
Expected:
- Node turns blue again (RUNNING)
- Input field disappears
- Agent continues execution
- More text appears
- Eventually completes
If failed:
- Check user-query message in WebSocket
- Check user-response is sent
- Check agentId matches
Steps:
- Type: "Compare Python and JavaScript for web development"
- Submit and watch
Expected:
- Main agent node appears
- Text starts streaming
- Multiple child nodes may appear (subagents)
- Each node has its own content
- Parent-child relationships visible (arrows)
- All nodes eventually complete
- Final answer in main agent
If failed:
- Subagents may not spawn for all queries
- This is normal - AI decides when needed
- Try more complex queries
Steps:
- Stop the backend (Ctrl+C)
- Try to submit a prompt
- Watch connection indicator
Expected:
- Connection indicator turns red
- Text says "Disconnected"
- Submit doesn't work
- Console shows connection error
Steps to continue: 4. Restart backend 5. Refresh frontend page
Expected:
- Reconnects automatically (if implemented)
- OR shows "Disconnected" until refresh
- After refresh, green indicator returns
Steps:
- Type: "Help me plan a 3-day trip to Tokyo"
- Submit and observe
Expected:
- Agent may ask clarifying questions
- When are you going?
- What's your budget?
- What interests you?
- Each question appears in orange node
- Can respond to each question
- Agent may spawn subagents for:
- Hotel recommendations
- Restaurant suggestions
- Activity planning
- Multiple nodes in tree
- All eventually complete
- Final comprehensive answer
Steps:
- Type: "Write a 500-word essay about AI"
- Submit and observe text appearing
Expected:
- Text appears smoothly
- Not all at once (should stream)
- No lag or freezing
- Content area scrolls if needed
- UI remains responsive
Performance:
- Streaming should be visible (not instantaneous)
- Each chunk should appear within 100ms
- Total time depends on AI response time
Steps:
- Submit any prompt
- Wait for agent to appear
- Click on the agent node
- Observe visual changes
Expected:
- Node can be selected (visual feedback)
- Node content is readable
- Status is clear
- Can scroll content if long
Steps:
- Submit: "What is 2+2?"
- Wait for completion
- Observe final state
Expected:
- Node has green background
- Thicker border (4px vs 2px)
- "✓ FINAL ANSWER" badge visible
- Badge in top-right corner
- Green badge color
- Text says "4" or similar
Steps:
- Submit: "Hello"
- Immediately after completion, submit: "What's your name?"
- Then submit: "Tell me a joke"
Expected:
- Each request clears previous nodes
- New agent tree starts each time
- No overlap or confusion
- Each completes independently
- Final answer only on most recent
Look for these logs:
- "WebSocket server running on ws://localhost:3001"
- "Client connected" (when frontend connects)
- No error messages
- Agent creation logs
Look for these messages:
- "Connected to WebSocket server"
- "Received: ..." for each message
- No error messages
- WebSocket connection active
Click on the WebSocket connection:
- Status: 101 Switching Protocols
- Messages tab shows traffic
- Can see sent messages (green)
- Can see received messages (white)
- JSON is properly formatted
Record these times for your system:
| Test | Expected | Actual |
|---|---|---|
| Connection time | < 1s | ___ |
| First agent appears | < 2s | ___ |
| Text starts streaming | < 3s | ___ |
| Simple query completion | 5-10s | ___ |
| Complex query completion | 15-30s | ___ |
| User query response time | < 1s | ___ |
| Problem | Quick Fix |
|---|---|
| Red connection indicator | Restart backend |
| No nodes appearing | Check browser console |
| Text not streaming | Check WebSocket messages |
| Stuck on orange | Try responding again |
| Backend crash | Check API key in .env |
| Frontend blank | Hard refresh (Ctrl+Shift+R) |
All tests passing means:
- WebSocket connection works
- Agent creation works
- Text streaming works
- User queries work
- Final answers display correctly
- Multiple agents work
- Error handling works
Status: Ready for use! 🎉
Once all tests pass:
- Try your own queries
- Test edge cases
- Experiment with complex prompts
- Monitor performance
- Provide feedback
Document any issues you find:
- Issue: _______________
- Reproducible: Yes / No
- Workaround: _______________
Last tested: _______________ Tested by: _______________ System: _______________ Result: Pass / Fail