GGHL Command  Member Hub Design mockup
22px
DW
Guide LibraryWhat your AI bot knows, and where to put it
Automations

What your AI bot knows, and where to put it

Three places a bot reads from, one of which silently ignores your custom values.

FreeAbout 5 min

What you'll get

  • A clear rule for what belongs in your bot's prompt, what belongs in its knowledge base, and what has to be typed out in full.
  • The one place custom values are quietly ignored, which is the difference between a bot that answers correctly and one that invents a name.
  • The exact text of your own values, ready to paste where tokens will not work.

The rule

A bot reads from three places. Only two of them understand {{custom_values.something}}.

Where it livesCustom valuesWhat belongs there
Bot Goals: Personality, Goal, Additional InformationResolvedWho the business is. Name, hours, phone, booking link, tone
Workflow texts and emailsResolvedAnything the bot hands off to
Knowledge base answersIgnoredFacts, written out in full, with no tokens at all

Put identity in Bot Goals. Keep the knowledge base generic, or write the real words into it. Never put a token in a knowledge base answer.

Say this

List my custom values and show me what each one is actually set to.
Which of my custom values are empty?
I am writing knowledge base answers. Give me the real text for each value so I can paste it in.

The pro prompt

The exact ask we run on real client accounts

Proven live
In my [MCP Testing] account, list every custom value with the text it is currently set to, and flag any that are empty.
I am about to write knowledge base answers for an AI bot, and knowledge base answers ignore these tokens, so I need the literal words to paste in rather than the token names.
Do not change anything. This is a read.

Click the box to select it, then press ⌘C (or Ctrl+C)

Everything in [brackets] is yours to change. Run it before you write a single knowledge base answer, and keep the output next to you while you write.

What goes wrong, in the bot's own words

A knowledge base answer was written like this:

Disputed charges are escalated to `{{custom_values.refund_officer}}`, who reviews them within 4 business days.

The value was set correctly. The knowledge base saved. Retrieval scored a strong match. Asked who handles a disputed charge, the bot told the customer:

"Disputed charges are escalated to ZZPROBE CONTROL BETA, who reviews them within 4 business days."

It did not read the braces out loud, and it did not invent a plausible name. It took the words sitting next to the token and served them up as a person. Whatever text happens to neighbour that token becomes the answer, which means you cannot predict what a customer will be told.

Why this passes your testing

Here is the part that catches people. If the same fact is in your Bot Goals and in a knowledge base answer, the bot answers correctly, because it fills the gap from the prompt where the value did resolve. Your test passes.

It only breaks for facts that live in the knowledge base alone. Those are the specific ones: a person's name, a policy window, a price, a room number. So the bug hides from exactly the check you would run, and surfaces on the answers that matter most.

Test with a fact that appears nowhere in your Bot Goals. That is the only test that tells you anything.

Good to know

  • Bot Goals has a size limit, around 1,800 words across all three boxes. That is enough for identity and tone. It is not enough for a hundred service descriptions, so most of a real knowledge base has to be plain written text either way.
  • Both brace styles work in Bot Goals: with inner spaces and without. Neither works in a knowledge base.
  • Building an account you will reuse for other clients? Custom value keys travel to the new account but their values arrive empty. Combined with the rule above, that means a knowledge base written for one client is never portable: it has to be rewritten with the new client's real words. Plan for that at the point you take their answers, not afterwards.
  • Ask your client the specific questions up front. Every fact you would have reached for a token to fill is a question that belongs in your intake, so the answer can be typed into the knowledge base in full.
  • Reading your values works on the Free plan. Changing them needs the full license.

Where people go wrong

What happenedThe fix
"The bot told a customer a made-up name."A token in a knowledge base answer. Replace it with the real words.
"It worked when I tested it and broke in front of a client."The fact you tested was also in Bot Goals. Retest with something that lives only in the knowledge base.
"I put the agency name in the knowledge base so it would be easy to change later."Put it in Bot Goals instead, as a custom value. That is the place changing it once actually works.
"I reused a client's setup and the new bot says nothing useful."Values do not travel between accounts, and knowledge base text was never tokenised. Rewrite the answers with the new client's facts.

Related guides

← Back to the Guide Library  ·  Full list of guides