A private-markets agent platform for CRE
Three engines over a DuckDB warehouse — deal sourcing, underwriting, and outreach. Built for a commercial real estate operator who wanted to compress the time from listing to decision.
The Challenge
Commercial real estate deal flow lives in PDFs, scraped listings, broker emails, and analyst spreadsheets. By the time a deal is fully underwritten, two things are usually true: another buyer is already in the room, and the work the analyst did doesn't compound — the next deal starts from zero.
Atlas wanted to turn that workflow into a software loop — a system that pulls in deals, underwrites them against the firm's thesis, and surfaces the few worth a phone call.
What we built
One DuckDB warehouse on shared storage, three engines on top:
Sourcing
Ingest listings, broker emails, and public records into a single normalized table. Deduplicate across sources. Surface deals that match the firm's active mandate.
Underwriting
Pull comps, run the model, generate a one-page memo per deal. Claude does the synthesis; the numbers come from the warehouse so they're auditable.
Outreach
For deals that clear the underwriting bar, draft a personalized outreach to the broker or seller — grounded in what the underwriting actually showed.
Why DuckDB
CRE data is wide, columnar, and mostly read-heavy — the shape DuckDB is built for. Running the warehouse as a single file on shared storage meant the team could iterate on the schema in days, not weeks, and every engine read from the same source of truth. No service layer, no migrations theater, no Snowflake bill.
Outcome
The platform works as a loop. Sourcing pulls deals into the warehouse and deduplicates against the firm's active mandate. Underwriting produces a one-page memo per deal — Claude does the synthesis, but the numbers come from the warehouse so they're auditable. Outreach drafts personalized notes grounded in what underwriting actually showed.
Running the warehouse as a single DuckDB file on shared storage means every engine reads from the same source of truth. The schema can iterate in days, not weeks — which matters more than it sounds, because CRE thesis shifts quarter to quarter and the warehouse has to keep up without breaking the engines that live on top of it.
Building an agent platform on private data?
We've done sourcing, underwriting, and outreach loops end to end. Tell us what you're trying to build.
Start a conversation