Beautiful Web UI for GPT-4 Multi-Agent Chat with Specialized Assistants

Go to Workflow
0 views
Built by Hugo Hugo
Created on June 13, 2026

Description

n8n Graphical Input Template - AI Agent Interface

A beautiful, ready-to-use HTML interface for n8n workflows that allows your users to interact with AI agents through a clean web UI. No frontend skills required!

🎯 Why Use This Template?

No Frontend Skills Required**: Get a professional interface without writing React, Vue, or complex JavaScript
Real-Time AI Responses**: Display AI responses directly in the interface with loading animations
User-Friendly**: Your clients get a beautiful UI instead of dealing with APIs or command-line tools
Plug & Play**: Just paste the code in an n8n Code node and connect your AI agents
Fully Customizable**: Easy to modify colors, add more agents, or change the layout
Dark/Light Mode**: Built-in theme toggle with localStorage persistence

🚀 When to Use This?

Perfect for:
AI Agent Interactions**: Let users chat with different specialized AI agents (Database, Web Search, RAG)
Customer Support**: Route customer questions to appropriate AI assistants
Data Collection**: Gather information from clients with instant AI-powered responses
Customer Portals**: Create simple interfaces for customers to interact with your AI automations
Internal Tools**: Build quick admin panels with AI assistance

📦 What's Included?

✅ Text Input Area: Large textarea for user messages
✅ Send Button: Main action button with smooth animations
✅ 4 Specialized Agent Buttons: Pre-configured for General, Database, Web, and RAG agents
✅ AI Response Display: Beautiful response area with agent badges and loading states
✅ Project Guide Modal: Built-in documentation for your users
✅ Theme Toggle: Dark/Light mode with localStorage persistence
✅ Responsive Design: Works perfectly on desktop, tablet, and mobile
✅ Font Awesome Icons: Beautiful icons throughout the interface
✅ Error Handling: Graceful error messages if something goes wrong

🛠️ How to Use

Part 1: Display the Interface

Create a 3-node workflow to show the UI:

Webhook (GET) → Code Node → Respond to Webhook

Configuration:

Webhook Node (GET):
Method: GET
Path: /your-interface (e.g., /ai-chat)
Authentication: Optional

Code Node:
Copy the entire content of main.js
Paste it into the Code field

Respond to Webhook:
Respond With: First incoming item
Response Data Source: Binary
Binary Property: data

Part 2: Process AI Requests

Create a separate workflow to handle AI processing:

Webhook (POST) → Switch → AI Agents → Code Node → Respond to Webhook

Configuration:

Webhook Node (POST):
Method: POST
Path: /webhook-endpoint
Response Mode: "Respond to Webhook"

Switch Node - Route by agent type:
Rule 1: {{ $json.body.agent_type }} equals general
Rule 2: {{ $json.body.agent_type }} equals database
Rule 3: {{ $json.body.agent_type }} equals web
Rule 4: {{ $json.body.agent_type }} equals rag

AI Agent Nodes (4 nodes, one per agent type):
Connect one AI Agent to each Switch output
Configure with OpenAI, Anthropic, or local LLM
Add tools, memory, system prompts as needed

Code Node - Format the response:
const webhookData = $('Webhook').first().json.body;
const aiResponse = $input.first().json;

return [{
json: {
response: aiResponse.output || aiResponse.text || aiResponse.response,
agent_type: webhookData.agent_type,
user_message: webhookData.message,
timestamp: new Date().toISOString()
}
}];

Respond to Webhook - Send back the formatted response

🔧 What to Update

In main.js

Line 847 - Update webhook URL to match your n8n path:
const WEBHOOK_URL = '/webhook/webhook-endpoint';

Line 20 - Customize project name:
const projectName = "AI Assistant Hub";

Lines 34-56 - Change colors (optional):
:root {
--primary: #6366f1; /* Main accent color */
--primary-hover: #4f46e5; /* Hover state */
--background: #ffffff; /* Background */
}

📊 How It Works

User visits /your-interface

Sees the chat interface

Types message + clicks agent button

POST to /webhook/webhook-endpoint
{
"message": "Find users in database",
"agent_type": "database",
"timestamp": "2025-10-19T..."
}

Switch routes to Database AI Agent

AI Agent processes with tools/memory

Code Node formats response

Returns { "response": "Found 10 users..." }

Interface displays response with badge + animation

🎨 Customization Guide

Add More Agents

Copy an agent card (lines ~700-730) and modify:





Custom AI Agent

Specialized in your custom task.



Then add CSS for the new agent type:

.agent-card.custom-agent::before { background: #f59e0b; }
.agent-card.custom-agent:hover { border-color: #f59e0b; }
.agent-icon.custom-icon { background: linear-gradient(135deg, #f59e0b, #d97706); }
.response-agent-badge.custom-badge {
background: rgba(245, 158, 11, 0.1);
color: #f59e0b;
}

And update the Switch node to handle the new agent type!

Modify Text Content

Modal Guide**: Lines ~754-810 - Update help text
Placeholder**: Line ~689 - Change textarea placeholder
Subtitles**: Lines 677, 693 - Modify section descriptions

Change Agent Descriptions

Lines 705, 717, ~729 - Update the description text for each agent.

📱 Built-in Features

Enter to Send**: Press Enter to send (Shift+Enter for new line)
Escape to Close**: Press Esc to close modals
Loading State**: Animated spinner while AI processes
Agent Badges**: Color-coded badges show which agent responded
Clear Button**: Easily clear responses to start fresh
Theme Persistence**: Theme choice saved in browser
Smooth Animations**: Professional transitions and hover effects
Error Handling**: User-friendly error messages

💡 Example Workflow Ideas

Customer Support Bot
General Agent**: Answers common questions
Database Agent**: Looks up order status, account info
Web Agent**: Searches knowledge base articles
RAG Agent**: Searches company documentation

Data Analysis Tool
General Agent**: Explains data concepts
Database Agent**: Runs SQL queries on your data
Web Agent**: Fetches external data sources
RAG Agent**: Searches analysis reports

Internal Admin Panel
General Agent**: General assistance
Database Agent**: User management queries
Web Agent**: Check external integrations
RAG Agent**: Search internal docs/wikis

🐛 Troubleshooting

Response not displaying?
Check that Code Node after AI Agent formats response with response field
Verify webhook URL in main.js matches your n8n webhook path
Check browser console for JavaScript errors

AI Agent not responding?
Ensure Switch node routes match agent types: general, database, web, rag
Verify AI Agent nodes are properly configured with API keys
Check n8n execution logs for errors

Styling issues?
Clear browser cache
Check that Font Awesome CDN is loading
Verify CSS variables are properly defined

📝 Technical Details

Framework**: Pure HTML/CSS/JavaScript (no dependencies!)
Icons**: Font Awesome 6.4.0
Browser Support**: All modern browsers (Chrome, Firefox, Safari, Edge)
Mobile**: Fully responsive with touch support
File Size**: 1050 lines (35KB minified)

🤝 Contributing & Support

This template is designed to be simple and self-explanatory. The code structure:

Lines 1-23: Configuration and setup
Lines 24-640: CSS styles
Lines 641-751: HTML structure
Lines 752-1048: JavaScript functions

Feel free to modify and adapt to your needs!

📝 License

Free to use and modify for your n8n workflows. No attribution required.

Nodes Used (3)

AI Agent
@n8n/n8n-nodes-langchain.agent
Code
n8n-nodes-base.code
OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi