Blog/GTM runtime
How to build a CRM that updates itself
/Alex Mexicotte/LinkedIn/General Manager
Nobody here does CRM data entry. Agents sit on every call, email, and Slack thread, write the account, contact, and deal records themselves, and report back in Slack. It captures 10x the data of the $350k Salesforce build I ran before this, and costs a dollar a week.
The Toyota Corolla of CRMs
I've always hated CRMs. Not the idea of a system of record. The hours of splitting a conversation into dozens of fields so the tool can understand what I already know. Reps should almost never touch the thing. I wrote about that in Why I'm building a CRM that reps won't hate. This is how we actually built it.
After carrying a quota for several years as a rep and fighting the constant battle of updating hundreds of fields, I was gifted the chance to pick and implement a CRM all on my own when I joined Figment. On my first day, the co-founder pulled me aside and said hey, our CRM is terrible. Can you buy and implement a new one? It wasn't in the job description. I thought it was the perfect chance to build the tool I would have wanted when I was a rep.
Many RevOps people never carried a quota, which led to biblical feuds between RevOps and sales. I wanted to build something that actually made reps' lives easier, not something they are forced to use and dread. My philosophy was the Toyota Corolla of CRMs. Ol' reliable. Not sophisticated, but it worked most of the time. Versus the Lamborghini-type instances I was used to: beautiful and elegant when everything worked, better to look at than drive, always in the shop.
A tall order. I did the best I could. I chose Salesforce for the flexibility. $350k, two separate implementation agencies, and 1.5 years later, I feel like I got something that both the reps and the VP of sales were happy with.
Fast forward four years into the age of agents. I built something for Apero that is more sophisticated, captures 10x the amount of data, hits 99% completeness, asks for no manual data entry from anyone, and costs $1/week to operate. I could almost cry.
This new system feels less like software and more like a clone of myself who listens and does all the data entry work for me. And it's way better than anything I could do manually even if I took the time. I want to lift the hood and show how the pieces fit, and what that lets us do.
Where the flow starts
The flow begins where opportunities begin: the first discovery call. We have Fireflies attend every call. You can use whatever call recorder you want. They're a commodity. Once the call concludes, a transcript is generated and the flow kicks off.
The transcript and attendee emails go to a DeepSeek v4 Pro agent trained on Apero's business. We wanted to replicate the combined brains of our team listening to every call and identifying the important bits to capture. We gave it a rubric of the information that matters for a successful engagement, and what good looks like. The agent searches for that info, summarizes it, and dumps it into a meeting record in Monday CRM.
Fig. 01
Call ingest
Recorder is a commodity. The business-trained agent is the product. Monday stores the meeting, then automations write the fields.
Never use the recorder's summary
An important side note: never use the summaries generated by your call recorder. They're terrible. Would you trust a rando with no understanding of your business to summarize your calls for you? That's the equivalent of the default summaries. Terrible models with no context on your business.
From there, we use built-in automations in Monday CRM to read the summary and slot the relevant information into the correct fields. Contrary to my philosophy with the manual Salesforce build, where I limited fields as much as possible to reduce rep work, I now bias toward capturing more data. The agents never tire, and more data means more learnings on your business.
Slack is the interface
We run the same flow against email and Slack. Agents read everything, find the context relevant to each account, contact, deal, and active project, slot the information into the right fields, and write summarized updates on the state of each, like a play-by-play feed for a baseball game. They generate tasks and notify us in Slack so deals don't go stale.
Instead of spending time in the CRM UI, Slack becomes the interface. We created a handful of agents that live in our Slack channels. Tag them and ask them to update things manually.
"Hey @AperoBot, add a deal value of $50k to the deal with RandoCorp."
"@Muthur6000 How many open deals do we have in pipeline and how are we tracking against our quarterly number?"
You can get as creative as you want. The team thinks of new things we want, and we empower everyone to add to the functionality. Tag the bot and tell it what you want.
Fig. 03
Channels in, Slack out
Calls, email, and Slack land in the same write path. Slack is where the team reads state and issues updates. The CRM stays the database.
Fig. 02
Tag the bot

The team already treats the bot as a coworker. Functionality is a chat instruction, not a ticket.
How the agents get less wrong
Just like a human analyst, it will make mistakes, misunderstand your directions, and sometimes fail. Two things in the flow keep it improving.
Slack prompts us with updates and asks for feedback. The agent takes that feedback and updates its own code and instructions.
We also set daily and weekly audits. The agents review their own work, look for evidence of where things break, fill the gaps, and update their own code and instructions.
All of this was built in Claude and Codex through natural language. I didn't look at a single line of code. It's very possible an engineer would look at my spaghetti and gag. But it works. And anything that breaks can be fixed in minutes.
Fig. 04
Feedback loop
Human replies in Slack rewrite instructions. Scheduled audits do the same when nobody is watching.
The hottest programming language is English
The best tools to use to build this yourself are highly correlated with how good their API, MCP, and/or CLI are. Salesforce ironically now has one of the best build experiences of any CRM because their CLI is so good, and that pains me to say after developing PTSD from clicking around in it for 1.5 years straight and paying developers $250/hr to update Apex. I won't trivialize this process. It still takes a ton of patience, iteration, and maintenance. But if you know what you want, it has never been a better time to build.
Whether you embrace the identity of vibe coding or lean toward Peter Steinberger's view that "vibe coding" is a slur, it's clear that the hottest new programming language is English. This positions people with systems-level thinking, an ability to describe clearly what they want, and, for now, a lot of patience to iterate. Anecdotally, the people I've seen build the most impressive stuff have not been core developers. It's been writers, artists, and operators who have managed people. As someone non-technical, I've ironically learned more about systems architecture in the last 6 months than the previous 10 years working in tech, simply through grilling agents and learning how the pieces fit together.
GTM still takes high EQ. Agents only amplify your abilities. If you don't know what you're doing, agents will amplify that incompetence. There's a reason so many people are working more than they ever have: building this way is addicting, and it feels like a video game.
If you want this kind of runtime instead of another $350k CRM project, reach out. Email hello@aperoadvisors.com or fill out the information below. You can add me on LinkedIn.
Questions
What is a CRM that updates itself?
It's a CRM nobody types into. Agents read the calls, email, and Slack, then write the accounts, contacts, deals, and projects. Slack is the interface, so reps almost never open the CRM. We call the whole thing a GTM runtime.
Should you use your call recorder's default summary?
No. Default recorder summaries have no context on your business. Send the transcript to an agent trained on a rubric of what good looks like for your engagements, then write that summary into CRM.
Why capture more CRM fields if agents do the data entry?
When humans typed, fewer fields meant less work. Agents don't tire, so more complete records produce more learnings. The Apero runtime captures about 10x the data of a constrained Salesforce build at 99% completeness.
What does the call-to-CRM flow look like?
Fireflies or any recorder attends the discovery call. The transcript and attendee emails go to a DeepSeek agent trained on the business. The agent writes a meeting record in Monday CRM. Automations slot the summary into the correct fields.
How do you update CRM without opening it?
Tag Slack agents. Ask them to set deal value, pull pipeline counts, or add functionality. They also generate tasks and ping the team so deals don't go stale.
How do the agents improve when they get something wrong?
Slack asks for feedback, and the agent updates its own code and instructions. Daily and weekly audits review the work, find breakage, fill gaps, and rewrite the same artifacts.
Do you need engineers to build a GTM runtime?
This one was built in Claude and Codex through natural language. The constraint is knowing what you want, plus patience to iterate. Tooling quality tracks how good the vendor's API, MCP, or CLI is. Salesforce's CLI is now one of the better CRM build surfaces.
What does a GTM runtime cost to operate?
The Apero runtime costs about $1 per week to operate, with no manual data entry. The earlier Salesforce implementation was $350k, two agencies, and a year and a half.
