← Engineering

· 7 min read · Michael Archer

Why Claude Cowork Can't Just Replace PM Software

DIY landlords are figuring out that Claude Code and Claude Cowork are good enough to run a lot of a rental business — draft the lease, summarize a screening report, chase down a comp, even write the reminder text. The next thought follows fast: if it can do all that, why not just point it at everything and cancel the property management software?

It's a reasonable instinct to test, for the same reason anyone self-managing a handful of units — long-term leases, short-term or vacation rentals, or a mix — tries it: dedicated property management software is expensive relative to a small portfolio, and a general-purpose AI workspace already feels like it's doing half the job for free. But it breaks in a specific, structural place, not a vague "it's not quite there yet" place. This post is about exactly where, and about the five-piece harness that's built to hold the part a general-purpose AI coworker was never going to hold, no matter how good the underlying model gets.

Where Claude Cowork is genuinely the right call for property management

Credit where it's due first, because most of self-managed landlording is a good fit for Claude Cowork, Claude Code, or honestly just email and point tools:

  • Screening — one-shot. Pull the report, read it, decide.
  • Document signing — one-shot. Send it, wait for the signature, done.
  • Rent or nightly-fee collection — scheduled. Same amount, same cadence, until it isn't.
  • Comps, contractor pricing, local regulation lookups — a research task with a start and an end.

None of that needs a second live party mid-task. It needs a tool that executes a bounded action or waits on a single event, then hands you the result. That's exactly what a general-purpose AI workspace is built for, and I still use one for all of it. If your rental is one unit on a twelve-month lease with no active repairs, you may genuinely not need anything more than this.

Where it breaks: coordinating tenants, guests, and contractors in real time

The piece that didn't survive contact with a general-purpose agent was coordination — and it doesn't matter whether you're a monthly-lease landlord or a short-term rental host, because the shape of the problem is identical.

Monthly rental version: tenant reports a leak. You need their availability. Then the plumber's. Then you're the relay between two people who don't have each other's numbers, for however many days it takes the windows to overlap.

Short-term or vacation rental version: a guest checks out at 11, the next guest checks in at 3, and the cleaner needs to know the exact minute the unit is empty — while also being told about the stain on the couch nobody mentioned. Same three-way relay, compressed into a five-hour window instead of stretched over three days.

Both are what landlords on r/Landlord call calendar tetris: three calendars, no shared source of truth, and one person in the middle whose only job is copy-pasting availability between the other two. Nobody in that chain is sitting in a workspace waiting for the next step. They're replying to a text whenever they get to it — at 11pm, from a car, between showings — and a general AI coworker is built to have a conversation with you, then go do one bounded task. It's not built to be a standing third party in a negotiation that runs for days without you present, and it doesn't wake itself up when a reply lands at midnight.

A workspace is fine for records. It doesn't run the conversation for you.

That's the whole gap. Claude Cowork is excellent at "here's a task, go execute it, come back with a result." Turnover and maintenance coordination isn't a task with a result — it's an open negotiation between two people who aren't in the room, held open across however long it takes, with someone (or something) reaching out on its own the moment a reply comes in.

How Doot's custom harness handles property management coordination

A general-purpose AI coworker fails here for one structural reason: it has no place to put the state of a negotiation once you close the tab. So instead of forcing that shape onto the job, Doot is built as a custom harness — a standing piece of infrastructure that holds open every negotiation currently in flight, wakes itself up when a reply comes in, and only ever hands control to me at the moments that actually require judgment. It's five pieces, each doing one job, none of them trying to be a do-everything coworker:

  • The orchestrator — the dispatcher. It routes every inbound message — a tenant's text, a guest's reply, a landlord's own ask — to the agent that owns it, and it's the one thing in the system that's always listening. There's no tab to reopen and no session to resume: an inbound SMS at 11pm is just another event it wakes up for.
  • The property management agent — the system of record. Properties, units, tenants and leases, maintenance requests, saved contractor contacts, expenses. It's what turns "the sink at Elm St." into a specific request with a specific coordination state, and it works the same whether the unit turns over every twelve months or every three days.
  • The texting agent — the calendar-tetris solver. It reaches the tenant or guest and the contractor or cleaner over SMS, collects availability, and matches windows without anyone copy-pasting between two conversations.
  • The phone call agent — for the moments text isn't enough: a burst pipe, a guest locked out, a same-day confirmation where a message might sit unread for hours you don't have.
  • The web search agent — the research side of the job: contractor lookups, comps, local short-term-rental rules, anything that needs a live answer instead of a stored one.

The reason this is a harness and not just five prompts is what happens between them. Every maintenance request and every turnover is a row with its own coordination state, not a conversation living in one chat history — so when a tenant replies to a text three days after it was sent, the texting agent doesn't need context loaded back in by a human; it looks up the open request, sees exactly what's outstanding, and picks the thread back up. A repair goes: tenant reports it, the property management agent creates the request, the texting agent collects the tenant's windows, the property management agent matches a saved contractor, the texting or calling agent confirms with them, and the whole thing gets written back to the same record — every text, every call transcript, every status change, in one place. Nobody is holding that state in their head. The harness is holding it, on disk, across however many days it takes.

That's also why the pieces stay separate instead of merging into one bigger agent. A texting agent that's mid-negotiation with a tenant shouldn't also be the thing deciding whether to page a contractor about an unrelated emergency call, and a research query for comps shouldn't share a context window with an open SMS thread. Splitting them by job is what lets the orchestrator run all of it concurrently — five open negotiations across three properties, at once, without any of them stepping on each other.

This runs through the four gates and the specific problem — calendar tetris — that makes a general workspace the wrong shape for this job. The short version: coordination — collecting availability, matching it, following up — is automatable, and the harness runs all of it. Decisions — is this an emergency, should we contact the tenant or guest, is this booking acceptable, is the job actually done — aren't, and every one of those stops the harness cold and waits for the landlord.

Property management software and Claude Cowork both punt on the same thing

Legacy property management software gives you a ticket system and calls it done — the coordination is still yours to run by hand. A general-purpose AI coworker gives you a smarter assistant for the one-shot and scheduled work, but the same live, multi-party coordination is still left on the table, because that's not the shape of task it's built for. Neither one closes the gap.

A custom harness — an orchestrator plus dedicated agents for property management, texting, calls, and research — is what actually closes it, for a monthly-lease landlord and a short-term or vacation rental host alike. That's what Doot is: purpose-built software for DIY landlords who want the coordination handled, not just recorded.

Have a take? Reply at marcher@yaswedo.com.

If you self-manage rentals — monthly leases, short-term turnovers, or both — Doot is free while it's in beta. It's the harness built for the part of the job that doesn't fit in a workspace.

Try Doot Free

Stack is FastAPI, Next.js, Postgres, Twilio, Retell if anyone's curious.