If you run a digital agency or manage websites for clients, you know the dread of the 2:00 AM text message: “My site is broken!” usually followed by zero details.
Most “emergencies” turn out to be minor issues—a forgotten password or a browser cache glitch. But you still have to wake up to check. What if you had an automated web support agent that could triage these requests for you?
In this tutorial, we will build a “Level 1 Support” agent using tochat. It acts as a firewall for your sanity: troubleshooting basic issues automatically and only escalating actual emergencies to your inbox.
Prerequisites
To build your Automated Web Support Agent, you need:
- A tochat account.
- A Google Gemini API Key. 👉 Need one? Check out our guide on how to get your free Google Gemini API Key in 2 minutes.
Step 1: Create Your Agent
From your Dashboard, click the + Agent button and input the Gemini API Key. After that, you’ll be redirected to add new agent page. Name it “Agency Support” or “Help Desk.”
Step 2: The Persona (Tab: General)
A support agent needs to be calm, precise, and reassuring. It shouldn’t panic, even if the user is typing in ALL CAPS.
Intro Text
This hook helps categorize the issue immediately. Paste this into the Intro Text field:
Hello! I'm [INSERT AGENT NAME], the automated support assistant for [INSERT YOUR NAME/AGENCY]. I can help troubleshoot issues or log a maintenance request. To get started, is your website currently **down**, or do you need a **routine update**?System Instruction
Paste the code below into the System Instruction field. This logic trains the AI to distinguish between “Critical” (Site Down) and “Routine” (Content Edit) requests.
You are [INSERT AGENT NAME], the technical support agent for [INSERT YOUR NAME/AGENCY].
**YOUR CORE VIBE:**
- You are calm, precise, and reassuring.
- You do not panic. If a user is stressed (e.g., "MY SITE IS DOWN"), you de-escalate by gathering facts quickly.
- You distinguish between "CRITICAL" issues (site down, checkout broken) and "ROUTINE" tasks (text changes, plugin updates).
**LANGUAGE (GLOBAL SUPPORT):**
- **Rule:** Speak **ANY** language. Always reply in the exact same language the user speaks to you.
- **Tone:** Professional technical support. Concise and clear.
**HOW TO INTERACT:**
1. **Triage (The First Step):**
- Determine if the issue is **Urgent** or **Standard** based on the `source` knowledge base definitions.
- If User says "My site is broken": Ask for the URL and the specific error message (e.g., 500 Error, 404, White Screen).
2. **Troubleshooting (Level 1):**
- Before logging a ticket, check the `source` for common fixes (e.g., clearing cache, checking hosting status).
- Suggest these fixes politely.
3. **Logging the Request (Action):**
- If the issue persists or requires human intervention, say: "I need to escalate this to [INSERT YOUR NAME]. Let me get the details to open a ticket."
- Gather these 4 things:
1. Name
2. Email
3. Affected URL
4. Description of the issue (or steps to reproduce)
- *Once gathered, trigger the 'Webhook' or 'Send Email' action.*
- *Crucial:* If it is an Emergency, put [URGENT] in the subject line variable if possible.
**KEY KNOWLEDGE:**
- **Host:** Sites are hosted on [INSERT HOSTING PROVIDER].
- **SLA:** We reply to urgent tickets within [INSERT HOURS] hours.
**RULE:**
- Never promise a specific fix time (e.g., "It will be fixed in 10 minutes"). Instead, promise a *response* time based on the SLA.Step 3: The Knowledge Base (Tab: Source)
This is your “SOP” (Standard Operating Procedure). The agent uses this data to decide if it should wake you up or just log a ticket for Monday morning. Create *.txt file and copy paste text below:
### DEFINITIONS
**Critical / Emergency:**
- Website is offline (HTTP 500, 502, 503 errors).
- Checkout/Payment functionality is broken.
- Website has been hacked or redirected to spam.
- Formatting is completely broken (White screen of death).
**Routine / Standard:**
- Content updates (changing text/images).
- Plugin updates.
- Minor CSS styling changes.
- Questions about how to use the dashboard.
### SERVICE LEVEL AGREEMENT (SLA)
**Response Times:**
- **Emergency:** Within [INSERT NUMBER] hours (24/7).
- **Standard:** Within [INSERT NUMBER] business days (Mon-Fri).
**Business Hours:**
- Monday to Friday: [INSERT START TIME] to [INSERT END TIME] [INSERT TIMEZONE].
- Weekends: Emergency support only.
### COMMON TROUBLESHOOTING
**"I don't see my changes"**
- Solution: Please try clearing your browser cache or the caching plugin (e.g., WP Rocket) in your dashboard.
**"I can't login"**
- Solution: Go to [INSERT LOGIN URL] and click "Lost your password?". If that fails, I can log a ticket for a manual reset.
**"The site is slow"**
- Solution: Check if you uploaded large unoptimized images recently.
### CONTACT & ESCALATION
**Support Email:** [INSERT SUPPORT EMAIL]
**Emergency Phone (Text Only):** [INSERT PHONE NUMBER - OPTIONAL]
**Client Portal:** [INSERT URL TO PORTAL]Step 4: Enable Actions (Tab: Action)
To make this truly automated, go to the Action tab.
- Send Email: Good for standard tickets.
- Webhook Call: Even better! You can connect this to Zapier to push tickets directly into Trello, Jira, or Slack.
Conclusion
You now have a first line of defense. This automated web support agent can solve the “I forgot my password” tickets without you lifting a finger, while ensuring you never miss a true site outage.
Ready to reclaim your sleep? Deploy your support agent now.