ASSISTANTS

Answers from your documents.
Not from guesses.

A chat assistant built on your site, your PDFs, your policies. It answers only from them, names the source under each reply, and hands off to a person when your material does not hold the answer.

0 invented answers.

The demo assistant below reads exactly six documents, nothing else. No source means no answer. One named source rides under every reply it gives, and every document and its vectors live in the EU.

Returns-policy.pdfPDF
Shipping-info.mdMD
Store-info.mdMD
Payment-FAQ.pdfPDF
Warranty-terms.pdfPDF
Store-hours.mdMD
Demo shop assistant
Grounded on 6 documents · live
Hi. I only answer from this shop's six documents, and I name my source under each reply. Ask me anything, or tap a question below.
This one is real. Try it.

Every reply carries its source.

This is not a mockup. Type a question and watch it answer only from the demo shop's six documents, name the file it used, and hand off to a person the moment its material runs out. Ask it to ship to the US and see it refuse instead of guess.

Answers only from your material. Site, PDFs, price lists, a wiki export.
Names the source. Each reply shows the document it was built from.
Stops when unsure. Below the confidence gate it hands off to a person.
The difference

Same question. Two very different bots.

Most chat widgets improvise, because sounding helpful is easier than being right. On a business people trust, that is not a small bug. Here is the same customer question, answered twice.

“Can I get this delivered same day?”
Off-the-shelf widget

“Yes, we offer same-day delivery on all orders. It will be there by tonight.”

Invented. The store has no same-day option. The customer waits in all evening, then writes the review.
Grounded assistant

“We do not offer same-day delivery. Standard is 2 to 4 working days, and orders before 2pm ship the same day. Want me to flag your order as urgent for the team?”

Shipping-info.md
Pulled from the real shipping policy. When the sources do not say it, the assistant does not say it.

Same model underneath. The difference is the engineering around it.

One path, every question.

Grounding is not a setting. It is retrieval-augmented generation, RAG for short: your material is indexed once, and each question walks the same fixed path before a word reaches the person asking.

Question arrives

From the widget, from Slack, from an email. It enters as plain text and nothing more.

Your material searched

The indexed passages of your own documents are ranked for the closest match. Nothing outside them is in scope.

Answer written from the match

The reply is composed from the retrieved passage only, in your tone, never from the model's general memory.

Source attached and logged

The document it drew from rides under the answer, traceable after the fact.

every_answer.log

Shipping-info.md The retrieved passage
Domestic orders ship within Germany only. Standard delivery is 2 to 4 working days. Orders placed before 2pm ship the same day. Tracking is emailed on dispatch. International routing is not available at this time.
Answer written from it

“Standard delivery is 2 to 4 working days. Orders before 2pm ship the same day.”

Cited: Shipping-info.md

No matching passage means no answer. The assistant declines and hands off instead of filling the gap.

Three shapes. One honest engine.

The grounding never changes. What changes is the material it reads and who it answers.

Customer-facing

Support chat

Product, policy and how-to questions answered in your tone, around the clock. Off-topic goes to a person, never gets improvised. The one most businesses start with.

How long does delivery take?
2 to 4 working days. Orders before 2pm ship the same day.Shipping-info.md
Internal

Knowledge bot

One assistant over your wiki, SOPs and policy documents. Your team gets the real answer in seconds, not a confident invention or a half-hour search.

How much parental leave can I take?
Up to 36 months, split as you choose before the child turns 8.HR-handbook.pdf
Triage

Request routing

A first layer that reads each incoming request and routes it to the right team or the right answer. Faster first response, hard cases stay with people.

My invoice is wrong and I am furious.
I am routing this to billing with your order number. A person picks it up today.Routed to billing

Four fair objections. Each one handled.

Every worry here is earned, because most chatbots deserve it. This is how the build answers each one before it becomes your problem.

“It will sound nothing like us”

Tuned on your real copy.

We match the tone to your actual website and documents, so it answers the way your best person on a good day would. Not in generic chatbot English.

“It will make things up”

Grounded, with four safeguards.

It answers only from your sources, names each one, and stops when unsure instead of inventing. That behaviour is engineered in, not switched on.

“We have no time to set it up”

Send a link. We do the rest.

You point us at the content and approve the result. The indexing, the tuning and the testing happen on our side.

“DIY tools need babysitting”

Looked after, permanently.

We keep the index fresh, watch the answers, and re-tune as your content changes. It does not quietly drift while nobody is watching.

The line against slop

Four safeguards in every build.

The same four that ship with our voice agent. Wired in, never a toggle, never an upsell. Each one is a filter a reply has to pass before it reaches the person asking.

01

Human handoff

Sensitive or off-topic requests go straight to a person. No loop, no dead end.

02

Uncertainty stop

Below the confidence gate it says it does not know, instead of guessing.

03

Clear decline

No source means no answer. Out of scope gets a plain no, never a confident wrong reply.

04

Transparency

It says it is an AI, names its source, and logs every answer it gives.

What clears all four reaches the customer

Where it is strong. And where it is the wrong tool.

A grounded assistant is excellent at some jobs and a poor fit for others. Selling it for the wrong one is exactly the kind of slop we are against. So, plainly:

Strong fit

Questions your documents already answer
Repetitive support and FAQ load you want off your team
Internal knowledge spread across wikis and PDFs
Triage and routing of incoming requests

The wrong tool

Medical, legal or financial advice. That stays with people
Decisions that need judgement your documents do not hold
Anything where a wrong answer is unrecoverable
A phone line. That is the voice agent, not this

Installed in one line.

We index your material, tune the tone on your real copy, and test against your own questions before go-live. It runs on our servers in the EU, in Falkenstein. Your documents never train a public model, and a data processing agreement is part of the contract.

The whole install
<!-- one script, in your page head -->
<script src="https://your-domain.com/assistant.js"></script>
No no-code glue, no third-party widget owning your data.

Same assistant, other surfaces.

The exact grounded build drops into the places your customers and your team already are. One index behind all of them.

Also runs on
Website widget Slack Microsoft Teams WhatsApp Business Internal portal

From link to live. Then kept honest.

You point us at the content. Everything else, including everything after go-live, happens on our side.

01

Send your sources

A link to your site, your PDFs, price lists, a wiki export. Whatever already holds the answers. Nothing else ever enters the index, so nothing else can ever come out.

02

We index and tune

Your material is split into clean passages and indexed. The tone is tuned on your real copy, so it answers the way you write, not the way chatbots write.

03

Test before go-live

We test it against your own real questions and agree what counts as correct, together, before it ever talks to a customer.

04

Live, and looked after

We keep the index fresh as your content changes, watch the answers, and re-tune the edges. Grounded on day one, still grounded in month six.

Your documents stay yours. That is the architecture.

Not a settings toggle, and not a promise made after the fact. This is how the system is built.

Data handling Art. 28 GDPR
Servers
EU only, in Falkenstein. Your content and its vectors take no detour through US routing.
Training
Your documents never train a public model. Not ours, not anyone’s.
Control
Purge or re-sync the index at any time. You own the source of truth.
Contract
A data processing agreement (Art. 28 GDPR) is part of the contract from day one.
Disclosure
It says it is an AI. It names its source and logs every answer it gives.

The paperwork is public: read the data processing agreement and the sub-processor list before you ever write to us.

Common questions.

Q01What does RAG actually mean?

Retrieval-augmented generation. Instead of answering from a model’s general training, the assistant first retrieves the relevant passages from your own documents, then answers only from those. It names the source and declines when your material does not hold the answer.

Q02How is this different from a widget bought in an afternoon?

An off-the-shelf widget guesses to sound helpful. A grounded build answers only from your real sources, carries the source with every reply, and stops when it is unsure. Each one is hand-engineered and ships with the four safeguards. No no-code glue, no third-party widget owning your data.

Q03What do you need from us to build it?

Your sources: website, PDFs, price lists, policies, a wiki export, whatever holds the answers. We build the retrieval pipeline, test it against real questions, and only then put it in front of people.

Q04What happens when it does not know?

It stops. Below the confidence gate the assistant says it does not have a reliable answer and offers the next sensible step: a handoff, a callback, or a person. No hedging that still sounds like an answer.

Q05Where is the data hosted?

EU only, in Falkenstein. Your documents and their embeddings never leave the EU and never train a public model. A data processing agreement is part of the contract.

Q06What does it cost?

Builds start at €690. The most-chosen Signature build is €1.290, and Bespoke starts at €2.490. Every build comes with a Care plan from €79 per month that keeps it indexed and tuned. Send a briefing and you get a fixed quote for exactly what fits, no hourly surprises.

Q07Is there a guarantee?

Yes. A 60-day performance commitment, written into the contract: it answers correctly from your content, or your money back. The bar is at least 90 percent correct on a test set of your real questions, agreed in writing before you sign and verified together at go-live.

Send a link. We do the rest.

Write to Fabi
RUNS ON
AnthropicGoogleGithubOpenaiN8nSupabaseStripeVercelCloudflareDockerHetznerPythonTypescriptResendAnthropicGoogleGithubOpenaiN8nSupabaseStripeVercelCloudflareDockerHetznerPythonTypescriptResend