AI features on your site, on your visitors' AI.
Your visitors already have an AI: an agent they sign in to, an API with their key, or a model on their computer. Leuria connects it to your page. You add a button and a few lines of code; nobody pays for a new model, and your data never leaves your page.
- No AI bill, no key to hide
- Your tools run in your page
- Every visitor says yes first

What changes for you.
The AI is your visitor's. The features, the tools and the data are yours, in your page, in your code.
- You get
- An assistant, answers from your docs, search by meaning, a form filled from a message.
- Tools the AI calls in your page: search your catalogue, read your notes, book a slot.
- You don't need
- An AI bill, or a key in your page or on your server.
- A server at all: every demo below is static files.
- Your visitor sees
- Leuria's window, which says what your site can and can't do. Nothing runs until they say yes.
- What your site asked of their AI today, in Leuria. A site is capped at 120 questions an hour, 20 from a background tab, and the visitor can pause it. Their AI is theirs to spend.
- Without Leuria, the same feature can use the browser's built-in AI, or your own server.
Five sites
that already do.
All demos
Kiln & Co.A shop whose assistant sells from the page's own stock.Connect button · Page tools · Structured output
Maren's notebookA notebook you search by meaning, indexed in the visitor's browser.Search by meaning · Related notes · Answers with sources
HollowmarkA field guide to 48 creatures. Describe one to find it.Search by meaning · Similar entries · Team builder
Rayon CyclesA help desk that follows the workshop's own guides.Skills · Page tools · Bookings you confirm
HearthA house read by a decision model, in one call.Decisions · Decision trace · Chat only for words
Add the button, then ask.
“Connect your AI” handles the rest: finding Leuria, asking the visitor, and offering another AI when they don't have it. Plain JavaScript, React, or any framework.
Start with the quickstartimport { createAI, leuria, promptAPI } from "@leuria/client"
import { setDefaultClient } from "@leuria/connect"
const ai = createAI({ providers: [leuria(), promptAPI()] })
setDefaultClient(ai) // <leuria-connect-button> uses it
const answer = await ai.chat({
prompt: "A mug that keeps tea warm, under €30?",
tools: [searchProducts], // runs in your page
}).text()Open source, from the button to the app.
The libraries and the desktop app, under the Apache 2.0 licence.
Go to leuria.dev