Product Live chat agent

The live chat agent you configure end to end

Answer visitors, capture leads and call your own APIs with an agent you configure end to end, with provider fallbacks so chat stays up and a human takeover button for when it matters.

  • Bring your own key
  • Free plan available
  • Live in about 5 minutes
5 AI providersAnthropic, OpenAI, Gemini, OpenRouter, DeepSeek, or your own OpenAI-compatible endpoint
Ordered fallbacksA chain of provider, model and key per agent
Human takeoverJoin any chat from the inbox, from Starter
One script tagShadow DOM widget, 14 themes, changes apply live
Desktop and mobile appsWork the inbox from a Windows app; iPhone and Android apps are built

Agent configuration

An agent is a draft you edit freely and a published version visitors talk to. You never change a live agent by accident.

  • Draft and publish, with version history and one-click rollback (5 to 100 versions kept depending on plan).
  • Per-agent model chain: provider, model, key, timeout and retries for every step.
  • Temperature, max tokens and history window per agent.
  • The playground always runs your draft, so you can test before anyone sees a change.
  • Start from a template for customer support, lead generation or booking, then edit everything.
  • An optional monthly message cap per agent. When an agent reaches it, that agent stops answering until the month rolls over.
Build an agent

Prompt, persona and variables

Write the instructions in plain language and give the agent a name, a tone and a first message.

  • System prompt, plus persona fields: name, avatar, tone, emoji use, language or auto-detect.
  • Greeting and conversation-starter buttons.
  • Variables you can use anywhere in the prompt: {{visitor.name}}, {{page.url}}, {{page.title}}, {{now}}, {{site.name}} and your own visitor attributes.
Prompt writing guide

Knowledge

Knowledge is text you control. Paste FAQs, policies, pricing and product details into the agent and it answers from them.

  • Text blocks and question-and-answer pairs placed in the prompt.
  • Strict mode: answer only from the knowledge you provided, otherwise say so and offer a person.
You decide what it knows. The agent answers from the text you paste in and nothing else. It does not crawl your website or ingest files, so there is no stale copy of a page it can quote by accident.

Tools: custom HTTP and built-in

Tools are how the agent does things instead of just saying things.

  • Custom HTTP tools: name, description, JSON-schema parameters, method, URL, header and body templates, encrypted secrets, timeouts, retries, response size limits and a "running" message.
  • Built-in tools: capture_lead, escalate_to_human, end_conversation, send_email_to_team, show_link (booking links too) and set_attribute.
  • Per-agent allow-list and a cap on tool iterations per turn.
  • Outbound calls are protected against SSRF: private and loopback ranges are blocked, and responses are size-capped.
  • Confirm before run: a tool that changes data (anything other than a GET) asks the visitor to confirm, in a new message, before it runs.
Custom HTTP tools

Conversation rules, business hours and targeting

Decide when the agent is on, which pages it serves, how long a chat can run, and what happens after hours.

  • Maximum turns and duration per conversation.
  • End-chat conditions: a phrase, a tool call, or an inactivity timeout.
  • Weekly business hours with a timezone, and an offline behavior: keep answering, show a message, or collect the visitor's details.
  • Idle follow-ups: a "still there?" nudge for a visitor who went quiet, with the texts you write and up to three per chat. The background worker delivers them, and never after a person has taken over.
  • Page and URL targeting: site-wide rules to show or hide the widget on chosen pages, and URL include and exclude patterns per agent, so a sales agent can serve your pricing pages while a support agent serves the help center.
Business hours Follow-ups and page targeting

Escalation and human takeover

Handoff is configured per business, not imposed. Pick the triggers and the action.

  • Triggers: the visitor asks for a person, keyword or topic rules, several unanswered replies in a row, an explicit tool call, or being outside business hours.
  • Actions: live takeover, email handoff with the transcript and collected details, or an offline message. Combine them.
  • Collect details before the handoff: name, email, reason.
  • Operator inbox with assignment, take over, reply and hand back to the AI. Live takeover is included from the Starter plan.
  • A sentiment rule that escalates when a visitor's messages turn negative.
  • Any teammate with the right role can pick up a flagged chat, so you decide who is on duty.
Escalation and takeover

Lead capture

Collect contact details in the flow of the conversation, or up front.

  • The capture_lead tool with your own fields, required or optional, validated.
  • An optional pre-chat form.
  • Lead list in the dashboard, CSV export and an email notification for each lead.
  • On Pro and above, post-chat analysis can extract fields you define, such as a budget or a company name, from each finished chat.
  • To send leads to a CRM, use a webhook or a custom tool.
Lead capture

Events and webhooks

Send what happens in chat to the systems you already use.

  • Events: conversation.started, conversation.ended, message.created, lead.captured, handoff.requested and tool.failed.
  • Each request is signed with HMAC-SHA256 in an X-SiteTrellis-Signature header.
  • Retries with backoff through a queue, a delivery log, test sends and redelivery.
  • Available from the Starter plan.
Webhooks

Analytics and playground

See what visitors ask and test changes before they go live.

  • Conversation log with search, filters and a transcript viewer.
  • Counts of conversations, handoff rate and leads, plus tokens and an estimated cost per agent and model. Your provider's bill is the authoritative number.
  • Playground: chat with your draft as a visitor, with custom attributes such as a page URL or a logged-in name.
  • Post-chat analysis on Pro and above: a summary, the visitor's sentiment, the outcome and any fields you ask for, shown as badges and filters in the inbox and as charts in Analytics.
  • Unanswered questions: a ranked list of what visitors asked and the agent could not answer, with filters and links to the conversations, so you know what to add to the knowledge next.
  • Debug trace: a per-turn trace in the playground and in the inbox shows which models were tried and which tools ran.
Playground and publishing Analytics and unanswered questions

Safety and guardrails

An agent on your site speaks for your business, and a key on your account costs you money. Both are protected.

  • Rate limits per IP, visitor session and site, and a maximum message length, so abuse cannot drain your key.
  • Allowed and blocked topics with a refusal message you write.
  • Prompt-injection hygiene: visitor text, knowledge and tool output are wrapped in labeled blocks and treated as data, and tool results are size-capped.
  • The agent never reveals its prompt or keys, and visitors see friendly generic errors while details go to the trace.
Security and privacy

Widget customization

A single script renders the widget inside a Shadow DOM, so your CSS cannot break it and it cannot break your site. Settings are fetched at load, so changes apply without re-embedding.

  • 14 premade themes: Canopy, Minimal, Midnight, Ocean, Sunset, Forest, Lavender, Mono, Glass, Bold Contrast, Soft Pastel, Corporate, Warm Paper and Neon. Each has a designed dark variant and meets WCAG AA contrast (4.5:1) in light and dark. Applying a theme fills in ordinary settings that you can then tweak.
  • A full colour system: separate light and dark colours for surfaces, header, bubbles, borders, links, input, buttons and status, plus typography, shape (radius, borders, spacing density) and solid, gradient or image backgrounds.
  • 48 design tokens: every one is a CSS variable you can override one by one. Tokens and themes are on every plan.
  • Launcher: shape, size, icon or image, label, animation, position and offsets, welcome bubble, delay.
  • Header, messages and composer: header layout, avatar, online indicator, timestamps, feedback thumbs, message and input styling, open, close and typing animations, and every string editable.
  • Phones: full screen, bottom sheet or floating, with a breakpoint you set and tablet overrides.
  • Expandable large view: a header button switches the small window to a roomy centred panel with a comfortable reading width, an optional side panel for starters and links, or a docked drawer. On phones it becomes true full screen with safe-area insets and keyboard-aware layout. Focus is trapped while it is open, Escape collapses it, and it respects reduced motion. Choose compact, expanded or automatic by screen size; the visitor's choice is remembered.
  • Formatted answers: Markdown renders fully, with tables, nested lists, code, quotes, links and rules, and it is rendered safely. Visitor messages stay plain text.
  • The editor: 21 grouped sections with search, a theme gallery with live previews, and a live preview for phone, tablet or desktop, compact or expanded, light or dark. It has colour pickers with contrast hints, undo and redo, a reset for each section, and JSON export and import.
  • Behavior: sessions that persist across pages, sound, business-hours banner, ARIA live region and keyboard support.
  • Auto-open: open the chat after a delay, after a scroll depth or on exit intent. It happens once per session and never after the visitor has dismissed the chat.
  • Consent notice: visitors accept your notice before they can chat. It links to your privacy policy, is remembered per visitor, and the time of acceptance is recorded on the conversation.
  • White-label: remove "Powered by" and add your own CSS on Pro and above. The server enforces it, so it cannot be switched on by editing the page.
Widget customization Themes and the expanded view Auto-open and consent

JavaScript API

Open the widget from your own button, tell it who the visitor is, and react to events.

SiteTrellis('identify', { name: 'Maya', email: '[email protected]' });
SiteTrellis('setAttributes', { plan: 'pro', page_type: 'checkout' });
SiteTrellis('event', 'checkout_started', { items: 3 });
SiteTrellis('sendMessage', 'Where is my order?');
  • Commands: open, close, toggle, identify, setAttributes, event, sendMessage, expand, collapse, toggleExpand and on, with expand and collapse events.
  • Page event hooks: fire SiteTrellis('event', name, data) from your own code, and a rule you define can open the chat, show a message or set visitor attributes.
  • Signed identity for logged-in users: your server signs the visitor's details with a per-site HS256 secret that you can rotate. Verified values are trusted separately from the self-reported ones that identify sets.
  • sendMessage sends a message as the visitor from your own button or link. It waits for the consent notice when you use one.
JavaScript API reference Signed identity

Providers, keys and fallbacks

Anthropic, OpenAI, Google Gemini, OpenRouter and DeepSeek, plus any OpenAI-compatible endpoint, all with your own keys.

  • Keys are encrypted at rest, shown masked, and tested with one click. A failing key is flagged in the dashboard.
  • An ordered chain per agent. A step is skipped on network errors, timeouts, HTTP 429, 5xx, overload or an invalid key, after a short retry for transient errors.
  • Conversation context is rebuilt for each provider, so tool-call history survives a switch mid-conversation.
  • A known-down step is temporarily skipped, and the whole turn has a time budget so chats do not hang.
  • If every step fails, the visitor sees your failure message, and you can have the conversation escalated by email.
  • Custom endpoint: point a key at any OpenAI-compatible API with a base URL and a model id, and optionally let SiteTrellis discover the model list. Only https addresses on public hosts are accepted.
AI provider keys

Connect Claude, ChatGPT and your own tools

Let an AI assistant read your conversations, look up leads or check analytics, and let your scripts do the same. Every connection is separate from your own login and has only the permissions you tick.

  • Claude, ChatGPT and other assistants connect over MCP: add one connector address, sign in to SiteTrellis in your browser and approve what the assistant may do.
  • Permissions start read-only. Anything that reaches visitors, such as taking over a chat and replying, is off until you switch it on.
  • Assistants and keys never get billing, team, AI provider keys or settings, and they cannot delete anything.
  • Scripts use API keys with their own permissions, workspace limits and expiry.
  • You can disconnect any connection at any time, and an owner can switch the whole feature off for the account.
  • Available on every plan.
Connect Claude, ChatGPT and API keys

Desktop and mobile apps

Work your live chat inbox without keeping the dashboard open. Both apps sign in through your browser, so they never see your password, and both are included on every plan. Taking over a chat needs a plan with live takeover, as in the dashboard.

Desktop app for Windows

  • Live inbox with Needs attention, Mine, Open and All views.
  • Native notifications when a chat needs a person or a visitor writes in your chat, and optionally for every new chat.
  • Tray icon with a badge, and do-not-disturb.
  • Take over, reply, hand back, resolve or close, with typing indicators and the visitor and lead details beside the chat.
  • Light and dark themes, and full keyboard control.
  • Links in visitor messages never open without your confirmation.
  • Updates itself.
The SiteTrellis desktop app showing the live chat inbox, an open conversation and visitor details.

Version 1.0.1, 64-bit installer, about 107 MB. The installer is not code-signed yet, so Windows SmartScreen may ask you to confirm: choose More info, then Run anyway. Notifications arrive while the app is running, and it keeps running in the tray when you close the window. macOS and Linux versions are next.

Desktop app guide

Mobile apps for iPhone and Android

  • Live inbox with the same four views, and pull to refresh.
  • Take over and reply from your phone, then hand the chat back to the AI.
  • Push notifications for chats that need you.
  • Follows your phone's light or dark setting.
  • No analytics or advertising code. Conversations are kept in memory only and erased when you sign out.

The iPhone and Android apps are built and ready for store release. Store links will appear here once they are published.

Mobile app guide

Teams, workspaces and sites

Structure follows how you work: an account holds workspaces, workspaces hold sites, and sites hold agents.

  • Three roles: owner, admin and agent. Agents can be limited to specific workspaces.
  • One workspace per client keeps an agency's work separated.
  • Seats, sites, agents and workspaces are capped by plan, not hidden behind sales calls.
  • An audit log of account changes.
Team and roles

What you control

Settings you control and what each one decides
AreaYou decide
ModelsProvider, model, key, timeout and retries for every fallback step
PersonalitySystem prompt, persona, tone, language, greeting, starter buttons
KnowledgeWhat the agent knows, and whether it may answer beyond it
ActionsWhich tools exist, what they call, and which are allowed
HandoffTriggers, actions, details to collect, who gets the email
AvailabilityBusiness hours, timezone, offline behavior, conversation limits, a monthly message cap per agent
ReachWhich pages each agent serves, when the chat opens by itself, idle follow-ups, and the consent notice visitors accept
ConnectionsWhich assistants and API keys can connect, and exactly what each may read or do
AppearanceA premade theme or your own colours for light and dark, typography, shape, launcher, copy, compact or expanded view, phone layout, and 48 design tokens
Your dataWhich events go to which webhook endpoints, and which leads you export
Your spendWhich providers are used and in what order, and the rate limits in front of them

Who it's for

Small businesses

One site, one agent. Answer common questions after hours, capture leads, and jump in yourself when a customer needs a person. Start on Free, move to Starter for live takeover.

Agencies

A workspace per client, seats for your team, and a lot of sites and agents on one plan. Each client brings their own key, so you never front token costs.

SaaS teams

Connect tools to your own API for account and order lookups, sign the identity of logged-in users, and push events into your support stack with webhooks.

Built for text web chat

SiteTrellis does one job: a text chat agent on your website, with you in control of the model, the knowledge and the handoff. That focus is also what it leaves out:

  • Text, not voice. The agent chats in writing on your site.
  • Replies arrive whole. The widget uses short polling, so a reply appears when it is complete.
  • Knowledge is text you write. You paste in what the agent should know. There is no crawler, file ingestion or embeddings search, and you control every word it can draw on.
  • One channel: your website. Email is outbound only (transcripts and alerts). There is no inbound email, WhatsApp or Slack channel.
  • Webhooks and custom tools instead of native connectors. Send events to your CRM or helpdesk, or call its API from a tool.
  • Prompt and rules, not a flow builder. You shape the agent in plain language.
  • Email and password sign-in for your team. There is no SSO or SAML.

Try it on your own site

Start free, add a key, publish an agent and paste the snippet. The quickstart takes about five minutes.

  • No credit card
  • Your keys, your rules
Start free, no credit card