Skip to main content
Human escalation is the hand-off that happens when an agent stops making progress on its own. The person it needs is the end user, another user with a particular role in the tenant, or ServiceTitan. In some cases the agent refuses the request instead of handing it off. The hand-off lives in the conversation. Information problems are questions inside the Agent Message. They do not need a separate component. The other four problems use the same message: the agent names the block, offers a path when one exists, and waits for a decision before it continues.

Five reasons an agent escalates

Information problems

This occurs when the agent can do it, but only after the user provides some essential information. These types of escalations can be handled via the agent asking questions within the agent message itself and do not require any other components/component compositions. There are a few branching possibilities for this: blocking, non-blocking, and silent, all of which should be handled differently in terms of where the ask appears in the chat.

Silent

This occurs when an agent has an information problem but from looking at the user’s memory, inference from elsewhere in the thread, etc. the agent can resolve it without needing to bother the user. For this there is no need for any UI.
  1. The agent hits a missing fact.
  2. It checks memory and the thread.
  3. It resolves the gap and continues.

Non-blocking

This occurs when an agent has an information problem and isn’t able to resolve it, but can probably provide a lot of information without blocking on the missing pieces. When this happens, the agent should surface to the user that it wasn’t able to resolve that particular part of the response so that the user can take action in follow-up messages to provide the missing information.
  1. The agent hits a missing fact.
  2. It cannot resolve the fact.
  3. It tells the person, then continues with the rest of the task.

Blocking

This occurs when an agent has an information problem and isn’t able to resolve it and is blocked as a result of not having the information that it needs. When this occurs, the agent should surface the information gap when it runs into it, and then again at the bottom of the message as a question to the user to understand how it should proceed.
  1. The agent hits a missing fact.
  2. It cannot resolve the fact.
  3. It tells the person, continues anything that does not depend on the fact, and ends the message with a question.

Authority problems

This occurs when the agent can do it, but only after an authority of some type provides permission. This means that the user cannot resolve this by themselves, rather, the agent needs to either send a request for authorization to another party, or ask the user to go request that information.
  1. The agent hits a permission gap.
  2. It tells the person and offers a path to authorization.
  3. If the person accepts, the agent takes that path.

Another role has to authorize

This occurs when the user does not have the role permissions to perform an action, so the agent flags the role discrepancy and offers a path forward. If accepted, agent moves forward.

A tenant setting blocks the action

This occurs when a user asks Atlas to do something that’s blocked not by their personal role, but by a setting the tenant itself has configured—something only a Tenant Owner or IT Admin controls.

ServiceTitan permission blocks the action

This occurs when ServiceTitan does not allow the action, so the agent flags the role discrepancy and offers a path forward. If accepted, agent moves forward.

Agent runs into credit limit

This occurs when there is an org-level cap on the amount of money or tokens that an agent is allowed to use for a particular action, so the agent cannot move forward without approval.

Confidence problems

This occurs when the agent can provide some information but the agent itself is not confident that the information will be correct or any good.

Additional context might exist, but the agent isn’t sure

This occurs when the agent can give its best answer, but cannot rule out missing context that would change it.
  1. The agent gives the best answer it has and names what it cannot rule out.
  2. It offers to proceed, or to check with the team that owns the policy.
  3. If the person proceeds, the agent records that the answer is unconfirmed.

The quality of the information it knows is in doubt

This occurs when the agent can tell that the information it has is potentially wrong or out of date, and thus can only give what it has access to.
  1. Agent encounters old or out-of-date data.
  2. Agent flags this to user, asks for how to proceed.
  3. User provides info on how to move forward.

Guidance is in conflict with product changes

This occurs when the information that the agent has is stale relative to a known recent change. The agent has one clear answer, but that answer predates a change to the product itself.
  1. Agent knows its info is stale.
  2. Agent flags this to user, offers path forward to check.
  3. If user accepts path forward, agent performs action.

Capability problems

This occurs when the agent is incapable of doing the task due to non-abilities of different sorts.

The original task is beyond the abilities of the agent

This occurs when an agent would never have the particular ability to do the thing requested.
  1. User asks agent to do something it would never be able to do.
  2. Agent says it cannot do the thing, offers alternative.
  3. If user accepts alternative, agent performs action.

The agent believes it’s capable, but the user does not after the fact

This occurs when the agent thinks it gave the right answer, but the user disputes it.
  1. User flags the agent request is incorrect.
  2. Agent flags what it can and cannot do in its response, provides path forward.
  3. If user accepts path forward, agent performs action.

A degradation of service

This occurs when an external system’s uptime affects the agent’s ability to do something.
  1. Agent notes that it cannot complete request due to service issues.
  2. Agent offers notification later.
  3. If user accepts path forward, agent performs action.

Prohibition problems

This occurs when the agent is incapable of doing the task due to it violating ServiceTitan Terms of Service, regardless of permissions.

Malicious intent

This occurs when the user is intentionally trying to access information or data that the user shouldn’t have access to, and the agent has to push back.
  1. The person asks for something the agent is not allowed to do.
  2. The agent says it cannot do that.
  3. If the person pushes, the agent holds the refusal and redirects to work inside the tenant.

Personal or emotional topics

This occurs when the user provides information that’s sensitive or personal, so the agent can’t really do anything about it.
  1. The person tells the agent something personal.
  2. The agent offers help reaching someone outside the conversation, such as the person’s manager.
This occurs when a user asks for legal or contractual guidance the agent is not allowed to give any advice whatsoever in that situation.
  1. The agent states that its rules block the request.
  2. It offers to re-route the request.
  3. If the person accepts, it performs that route. It still does not answer the prohibited question.

Another tenant’s information

This occurs when a user either maliciously or unintentionally attempts to access information on a tenant that they do not have permissions to view the information of.
  1. The agent states that permissions block the request.
  2. It holds that boundary.

Illegal or copyrighted content

This occurs when a user asks for something that the agent is not allowed to do because it is either illegal or copyrighted content.
  1. The agent states that it cannot complete the request.
  2. It offers an alternative that stays inside the rules.

No authorized path

This occurs when the agent can’t even offer a path forward.
  1. The person asks for the prohibited grant.
  2. The agent refuses it.
Last modified on October 12, 2026