DEV Community

Cover image for AI Agent Workspace: Every Customer, No CRM Software
Frances for Waxell

Posted on • Originally published at waxell.ai

AI Agent Workspace: Every Customer, No CRM Software

Every active customer has a workspace. It contains everything — their profile, lifecycle stage, onboarding history, follow-up notes, and a running log of every interaction. No CRM, no subscription, no fields I'm supposed to fill in but never do.

A customer workspace in Waxell Connect is a persistent, agent-readable environment where all context for a single customer lives: their files, their state, their history, and the playbook that tells every agent how to work with them. Unlike a CRM record, the workspace is active — agents read from it, write to it, and make decisions from it without anyone copying information into a prompt.

I used to have a CRM. It was fine. I even kept it current, for about three months, until I didn't. The problem wasn't the software — it was the workflow. Every interaction meant a context switch: finish the call, open the CRM, fill in the fields, return to work. When it was time to send a follow-up email, I'd open the CRM again, pull up the notes, paste the relevant parts into a chat with my AI, write the email, send it. Then update the CRM to say the email was sent.

That's five steps for one email. Four of them are moving information from one place to another.

The workspace-per-customer setup

One workspace per active customer. Each workspace has four things.

A profile state object — their name, company, package, timezone, use case, and any specifics about how they prefer to communicate. Not a document. A state object is a live, versioned, agent-readable data structure. When their package tier changes, I update it once. Every agent entering their workspace reads the updated version automatically on its next run.

A lifecycle stage field in the same state object — "onboarding," "active," "at-risk," "churned." When the stage changes, a scheduled task fires and creates the right follow-up sequence. Built the trigger once.

A history file — a running log of every meaningful interaction: support tickets, feature requests, things I noticed in calls. Agents append to this file. I read from it before calls. It stays current without anyone managing it.

A workspace playbook — the brief for any agent entering this space. Who this customer is, what they've asked for, what to watch for, what to avoid. Written once, read every time.

What the email workflow actually looks like

A customer sends me a support question. A scheduled task checks each customer workspace for new inbox items twice a day. When it finds one, it:

  1. Reads the profile state object
  2. Reads the history file for relevant prior context
  3. Reads the playbook
  4. Finds the workspace with our help documentation, repeats steps 1-3 there.
  5. Drafts a response

The draft lands in the workspace channel. I read it, edit it if I need to, send it. If I don't need to edit it — which is most of the time — it goes out as-is.

The agent already knew who this person was, and, because our Help Documents are also stored in Connect, it was able to correctly answer their question. I didn't paste anything.

Where Connect differs from a CRM

I'm not arguing CRMs are wrong for every situation. For a sales team tracking a pipeline across multiple reps, with quota reporting and activity logging and manager dashboards, a proper CRM earns its keep.

But I'm one person running all customer relationships myself. My reporting needs are: who is in what stage, who needs attention this week, what did I last say to each person. I have a table in a shared workspace that tracks every active customer: name, company, stage, last contact date, next action. Agents update it when they complete tasks. I review it Monday mornings.

The actual work — the emails, the follow-ups, the context behind those emails — happens in the individual customer workspaces, not in the table. The table is the summary layer. The workspaces are where the knowledge lives.

A CRM stores data for humans to retrieve. A workspace stores context for agents to act on. There's overlap, but the center of gravity is different.

What holds this together

State persistence. The agent entering Maria's workspace doesn't need me to tell it who Maria is. That's in the workspace, structured to be read, and it's the same data that was there last week. When something changes, I update the state object once. One change, everywhere it matters.

I've run this for about five months. The thing I didn't expect was how much time I'd been spending just finding context before — not doing anything with it. Before a call now: open workspace, read history file, five minutes. Before: open CRM, open notes doc, open email thread, try to piece together what the last conversation was about — twenty minutes if I was honest about it.

What you could build

One workspace per thing you track over time. The same pattern works for freelance clients, product SKUs, job candidates in a hiring process. The question worth asking: what context do I re-explain every time I work on this thing? Whatever that is belongs in a workspace state object, not in your head.

If you want to start somewhere, build one customer workspace and run it for two weeks before deciding whether to roll it out across your full list. Early access to Waxell Connect is at waxell.ai/get-access.


FAQ

How is a Waxell Connect workspace different from a CRM record?

A CRM record stores data for humans to retrieve. A Connect workspace stores context for agents to act on directly. When an agent enters a customer workspace, it reads the playbook and state objects automatically — it arrives knowing who this customer is, what's happened, and what to watch for. It doesn't wait for instructions.

Can I track customer stage and pipeline in Connect without a dedicated CRM?

Yes, if your pipeline is simple and your team is small. I use a table in Connect that shows stage, last contact, and next action for every active customer. That's enough for a one-person operation. For a sales organization that needs quota tracking, forecasting, and activity logging by rep, Connect doesn't replace Salesforce.

How do I set up a lifecycle stage trigger in Connect?

Add a lifecycle_stage field to the customer's state object. Build a scheduled task that checks whether the stage has changed and, if it has, creates the follow-up items for the new stage. First-time setup takes about an hour. After that, it runs on its own.

What goes in a customer workspace playbook?

The things you'd tell a colleague covering for you: who this customer is, what they're trying to accomplish, what's worked, what hasn't, how they prefer to communicate, what to avoid. Keep it under 500 words. Longer playbooks tend to bury the important things in the middle.

How do agents update the customer history file automatically?

Include an instruction in the workspace playbook telling agents to append a brief summary to the history file when they complete a task. Agents do this reliably when the instruction is in the playbook and the file already exists. You have to create the file first — agents won't generate it from nothing.

Do I need to be online when customer tasks run?

No. The twice-daily inbox check runs on its schedule. The lifecycle follow-up sequences fire when stages change, not when I remember to trigger them. That's the point.


Sources

Top comments (0)