Many agents look wonderful in demos, but the moment they encounter questions from real users, things tend to fall apart. The answers you get are vague, the system references the wrong data, and in many cases, it takes the wrong actions. Knowing this, I decided to switch things up a bit when it was time for me to build Otto for Super Easy CRM.
I didnât want another useless chatbot to live permanently at the bottom of the screen, occupying space. Rather, I wanted Otto to feel like a natural extension of the ecosystem that made the core product even more enjoyable, similar to how your MacBook feels when paired with an Apple Watch or AirPods.
I needed my AI Agent to build workflows, generate reports, update data, and do it all by simply asking it to. This is the stack behind what went into making Otto one of the best CRM Agents around.
What Otto Does
Otto doesnât try to do everything for you. Instead, he focuses on several high-value actions that solve major pain points for business users. Heâs constantly upskilling, especially when Iâm caffeinated and my kids are asleep. But as of writing, here are his primary skills:
- Building automations from natural language: You describe what you want done and he takes it from there.
- Generate reports: Tell Otto the type of report youâre looking for and heâll build it.
- Summarize records: Otto reads project summaries, associated tickets, tasks, notes, and milestones to present you with quick and accurate information.
- Health checks: He will let you know if youâve got too many custom fields, redundant info, duplicate records, mismatched data types, etc.
- Create alerts: Set alerts on records like Contacts, Leads, and Companies.
- Schedule bulk updates: (i.e., reassign old leads to a new salesperson).
And sure, you can talk to Otto like you would any other chat, but heâs not there to talk. Ottoâs happiest when heâs working to free up your time. Set him to run cleanup tasks and perform other time-intensive duties while you sleep.
NLP (Natural Language Processing) vs. NLU (Natural Language Understanding)
Youâll hear these terms thrown around a lot when it comes to AI. The two sound similar but serve two distinct purposes.
When AI, like Otto, is taking your prompt (e.g., "build an automation for escalated overdue tickets"), its NLP is engaged. Otto starts the process of tokenization (breaking sentences into words), spell checking, part-of-speech tagging, and machine translation. It's taking a sentence like âclose this projectâ and recognizing that "close" is a verb and "project" is a noun.
The NLU part of the process is where the magic happens. It's taking your naturally spoken language and matching it with an intent. It helps Otto know that âhey trash thisâ should be matched to the same intent as âOtto, please delete this.â I chose Gemini to power this area as Google AI Studio is one of the most robust, easy-to-use, and affordable agentic tools around.
How Otto Turns Requests into Intents
It's important, no matter how tempting it may sound, to refrain from letting AI have free rein over your system. Tools like Claude, Gemini, and ChatGPT are smart, but they can hallucinate and wreak havoc on your entire database. Otto doesnât decide what to do; rather, it takes your request and finds the correct intent.
Each request is mapped to an intent as shown in the table below:
| Action | Mapped Intent |
|---|---|
| Reporting | Create_report |
| Workflows | Build_automation |
| Task Management | Create_task |
| System Health | Audit_system |
Function Calling: Where the Work Happens
Once intents have been mapped, Otto then calls real system functions. For example, when you ask Otto to build you an automation that creates an alert for clients in the healthcare industry, it first builds a shell. Then, it extracts a trigger from your request.
In this example, we ask it to build something for clients, so it sets triggers for both contacts and companies. Next, he sets conditionsâin our case, when company or contact industry is set to healthcare. Finally, he builds the action: set an alert. This process doesn't have AI guess what to do. Instead, it's choosing from a finite set of actions with appropriate guardrails in place to prevent things from going awry.
Guardrails: Everybody Needs Boundaries
As mentioned earlier, itâs never a good idea to give any bot free rein over your precious data. It needs strongly enforced boundaries that prevent records from being deleted and misinformation from being spread. I created Otto to only act with the permission of the user it's talking to. This prevents standard user accounts from eradicating records or viewing information they shouldnât. It also means that the system admin will be more powerful than ever.
Scope: Set by the organization. Otto, by default, can interact with all modules, but you, the user, can tweak this in the settings.
Action Risk Levels:
Safe: Run immediately (Example: Creating a report).
Medium: Draft first, ask for confirmation (Example: Updating records).
High: Ask for confirmation, draft, ask for review, then execute (Example: Deleting records).
Example: Creating a report is generally pretty safe. You arenât updating or deleting records. Updating records, however, can be pretty risky, especially if the field you are updating triggers other automations and business processes. For high-risk actions like deleting, Otto will ask for confirmation, then have you review what it's about to delete, then delete only if you give it the OK.
Edge Cases: What Makes Good AI Agents Great
The human language can be confusing for us, and AI is no different. Many tools will get tripped up by requests like, âHey, close my lead for Matt.â If youâve got multiple people named Matt in your system, it doesnât know what to pick. Ambiguous requests can have catastrophic results if the AI youâre working with acts without clarifying.
Hereâs how Otto handles these linguistic traps:
- Disambiguation (The "Which Matt?" Problem): Instead of guessing, Otto will pause and ask: "Hey, I found three Matts with leads that are Open. Which record do you want me to work with? Matt from Fantasy Brawls, Matt from MakeItSuperEasy, Matt from SuperEasyCRM, or Matt from Fueling Food"
- Anaphora Resolution: Us humans use pronouns. So, if you say, "I just spoke with Mariah. Set a follow-up for her next Tuesday," Otto is smart enough to know that "her" refers back to Mariah, ensuring the task is pinned to the right person without you having to re-type her full name.
- Negation & Nuance: Basic tools see the word "Demo" and immediately think âsoldâ without considering context. Otto uses NLU to realize that "I am not interested in a demo" is actually a rejection, while the phrase "I'm not ready for a demo yet" is a future opportunity.
Beyond linguistic challenges, Otto also handles requests that defy system logic expertly. If you ask it to update the annual revenue for a company but you donât have such a field on the company object, it will tell you.
Additionally, it can alert you to potential automation clashes. If youâve got multiple admins, chances are an automation could perform actions on the same module using the same trigger. This can result in emails going to the wrong person or misinformation being spread. Otto tries to save you from yourself in this regard by saying, âHey Matt. There is a conflicting automation.â
Where Most AI Agents Get It Wrong
The main flaw that I see with most AI Agents is that they try to be too good at everything. CRM users arenât coming to their CRM AI Agent for ChatGPT-like responses. They arenât looking for opinions on dinner, career advice, or anything like that. They want to close deals, resolve tickets, and run projects.
A great AI agent should focus on solving problems that are actually relevant to users, not becoming a Claude replacement. The moment you try to turn it into a general-purpose assistant, you lose the one thing that makes it valuable, which is context. Other than this, guardrails are a huge weak point in many AI Agents.
If your AI can act without oversight and guidance, your data is on shaky ground. Iâve seen very lucrative deals turn to ashes because an agent got a little too creative and marked an opportunity as lost. AI is great, and you wonât find a bigger fan of it than me, but it hallucinates more often than you think.
Build an Agent like Otto
If youâve made it this far in the article, then you might as well give Otto a spin. He lives over at SuperEasyCRM.com and you can try him out for free for 30 days without supplying a credit card. AI Agents are here to stay and will only grow in scope. Chatbots are wonderful for brainstorming, but to be competitive in todayâs economy, you need a bot or two on your team. If youâre looking for an inexpensive and intuitive platform for building bots, I highly recommend using Google AI Studio. Itâs bundled with Google Workspace, and you can receive a discount on your subscription by signing up through my link here. https://referworkspace.app.goo.gl/cspS