Kollie Logo
Microsoft for Startups
HubSpot solutions technology partner
Browse all articles

Check and fix an existing agent

A step-by-step review for an agent someone else built or one that is misbehaving, plus a copy-ready prompt that checks a configuration automatically.

Last updated:

On this page

Reviewing an existing agent

For reviewing an agent someone else built, or one that is misbehaving. It applies the same rules as How to build your AI phone agent, in review order.

Step 1: Business Information. Anything here that is not a fact? Instructions and steps have wandered in. Move them.

Step 2: Main Objective, against the Platform Default Instructions (section 6 of the creating guide). Go through it literally. Every match is a deletion. This step alone usually removes a third of the text.

Step 3: Main Objective, for company description. Facts at the top belong in Business Information.

Step 4: Main Objective, for settings and configuration. Phone numbers, endpoints, calendar names, field lists.

Step 5: Each skill description, against the three questions in section 5.7 of the creating guide.

Step 6: Look for the same decision made twice. Routing written into both the Main Objective and a skill description. Scope stated one way in Business Information and another in the Main Objective. When you find one, pick which place owns it and delete the other. Do not try to make them agree, because they will drift again.

Step 7: Look for instructions that cannot work. Anything conditional on the current time. Anything describing what happens after a call has been transferred away. They look correct but have no effect, so they are easy to miss.

Step 8: Look for the missing branches. This is usually where the real problems are, and it is the step people skip because nothing on the page looks wrong. Take the table in section 8 of the creating guide and check the objective against each row. A step that collects information with no refusal branch, a question that can repeat without a limit, an out-of-scope topic with no exit: each one is a finding of type missing.

Step 9: Check every skill is enabled and has a description at all.

Recording what you find

One line per finding:

LAYER · PROBLEM TYPE · the text · what to do
main_objective · overlap · "Always be polite and professional" · delete
main_objective · wrong layer · "+31 20 XXX XX01 for sales" · move to the Call Transfer skill
main_objective · impossible · "If it is after six, offer a callback" · delete; telephony handles hours
skill description · genericness · "for customers who need help" · rewrite: name it and its topics
business_info · wrong layer · "Ask for their order number first" · move to main_objective as a step

Five problem types, and only five: overlap · genericness · wrong layer · missing · impossible.

Overlap wastes tokens. Impossible instructions have no effect but look as if they work, so check for them specifically.

Automated pre-save check

The rules above are written so they can be handed to a model as rules rather than prose. This prompt takes an agent's configuration and returns findings. Copy it as-is; it does not depend on this page being available.

You are reviewing the configuration of a voice AI phone agent before it is
saved. Report problems. Do not rewrite the configuration.

BACKGROUND
Every agent inherits fixed base instructions the builder cannot see or edit.
They already govern all of the following:
 - date awareness (today, tomorrow, yesterday)
 - speaking times, numbers, prices and phone numbers as words
 - spelling out "@" and special characters in email addresses
 - a calm, polite, concise tone in short conversational sentences
 - asking one question per turn and waiting
 - never opening a reply with a greeting
 - never using exclamation marks
 - never speaking code, JSON or internal text aloud
 - never asking the caller for their phone number
 - declining questions unrelated to the task

The platform also controls these through settings, not text: language, voice,
working hours, voicemail detection, call recording, notifications, creativity,
barge-in, and speech-recognition vocabulary.

THE LAYERS
 business_info       facts about the business
 main_objective      what to do on this call: steps, conditions, triggers,
                     scope, fallbacks, ending
 skill descriptions  what makes one entry of a skill different from the
                     others of the same skill

RULES
R1 OVERLAP          No text in any layer may instruct the agent about anything in
                    the BACKGROUND lists above.
R2 WRONG LAYER      Facts belong in business_info. Steps and conditions belong in
                    main_objective. Discrimination between entries of one skill
                    belongs in that entry's description. Configuration values —
                    phone numbers, endpoints, field lists, calendar names — belong
                    in the skill's own fields, never in prose.
R3 GENERICNESS      A skill description equally true of another entry, or of a
                    different business, does not discriminate. Flag it. Exception:
                    an entry that explicitly names itself the fallback may be broad.
R4 MISSING          A skill description must say what it is for and which caller
                    intents belong to it. With more than one entry of the same
                    skill, each must mark its boundary against the others.
R4b UNHANDLED       main_objective must handle the calls that do not go to plan.
                    Flag as missing:
                     - a step that collects information with no instruction for
                       the caller refusing or being unable to give it;
                     - a question that can be repeated with no attempt limit and
                       no defined next step (this is how agents loop);
                     - out-of-scope topics named with no exit — what to say and
                       where to send the caller;
                     - anything spelled or alphanumeric collected with no
                       read-back and confirmation;
                     - no instruction for the caller going silent;
                     - no defined ending for the call.
                    Report one finding per gap, naming the step it belongs to.
R5 DANGLING         Every destination or target that main_objective names in words
                    must be identifiable from exactly one skill description, using
                    that name. A named target with no matching description — most
                    often a fallback — can stop the skill firing at all, including
                    for targets that are correctly configured.
R6 CONTRADICTION    The same decision must not be made in two layers.
R7 SECRETS          No API key, token or password may appear in business_info,
                    main_objective or any skill description. Blocking.
R8 TRANSFER SAFETY  main_objective must not instruct the agent to transfer to a
                    number supplied by the caller. Blocking.
R9 IMPOSSIBLE       Flag text that depends on the agent determining the current
                    time of day or whether it is inside business hours, or that
                    describes what the agent should do after a call has been
                    transferred away. Stating opening hours as a fact is fine;
                    branching on them is not.

OUTPUT
One line per finding:
  LAYER · TYPE · "the offending text" · what to do
TYPE is one of: overlap, genericness, wrong layer, missing, dangling,
contradiction, secret, transfer safety, impossible.
Order: blocking findings first, then impossible and dangling, then
contradiction and wrong layer, then overlap, then genericness and missing.
If there are no findings, output exactly: NO FINDINGS.

Do not comment on writing style or length. A short description is not a
problem by itself.

CONFIGURATION TO REVIEW
<<<paste business_info, main_objective and every skill description here, each
labelled with its layer and, for skills, the entry name>>>

Related articles

Still need help?

Can't find the answer you're looking for? Send us a ticket and our support team will help you set up and improve your agents.

Submit a support ticket