Portfolio reporting at most CRE firms moves through email and spreadsheet exports. An agent can do the assembly, but the asset manager owns the call. Dock holds the agent's draft, the source pointers, and the signature in one row, so the published report has a clear chain of custody.
The architectural piece that does not change
CoStar, Yardi, and RealPage stay the system of record for the raw data. Dock is the system of record for what the AGENT INTERPRETS. Each Dock row carries a pointer back to the platform record, agent identity, decision, reviewer, and timestamp. The agent re-fetches platform data via fresh API reads when it needs current state.
The surface: Monthly Portfolio Reports
| Asset | Period | NOI (drafted) | Occupancy | Sources | Agent | Status | Reviewer | Signed |
|---|---|---|---|---|---|---|---|---|
| Hawthorne Industrial Park | Apr 2026 | $1.42M | 94.1% | Yardi GL #4421, CoStar comp #88301, RealPage occ #5510 | Atlas/v3 | Awaiting review | Priya Shah | pending |
| 220 Market Office | Apr 2026 | $612K | 78.3% | Yardi GL #4422, CoStar lease #91044, RealPage occ #5511 | Atlas/v3 | Approved | Priya Shah | 2026-05-28 |
| Cedar Crossing Retail | Apr 2026 | $389K | 91.7% | Yardi GL #4423, CoStar comp #88410, RealPage occ #5512 | Atlas/v3 | Sent back | Marcus Lee | pending |
Each row links back to the underlying records, not screenshots. When Priya opens Hawthorne, the agent re-pulls Yardi balances at click time and flags any drift since the draft.
A worked workflow: April 2026 close
- On day three, Atlas pulls trial balances from Yardi, occupancy from RealPage, and comp sets from CoStar for every asset.
- Atlas writes one row per asset, with drafted NOI, occupancy delta vs. prior month, and a narrative citing source IDs.
- The queue routes each row to the named asset manager. Priya gets Hawthorne and 220 Market. Marcus gets Cedar Crossing.
- Priya opens 220 Market, approves the lease comp Atlas chose. The row is signed and locked. The PDF generator pulls only signed rows.
- Marcus sends Cedar Crossing back on the variance line. Atlas re-reads Yardi, finds a late reclass, updates the draft, and re-queues.
No row reaches the investor packet without a signature. The agent never publishes on its own. The pattern follows the two-key handshake used elsewhere in Dock for irreversible actions.
Why this matters
Deloitte's 2026 CRE Outlook reports 27% of organizations face AI implementation challenges and only 22% leverage industry-specific platforms, with portfolio management called out as a top focus area (Deloitte, 2026 CRE Outlook). The gap is rarely the model. It is the missing review layer between draft and published number. CoStar Group runs a $3.25 billion analytics business on the premise that defensible CRE numbers require traceable sources (CoStar Group). Dock adds the same discipline to the agent's output.
This matches what we describe for agent audit and compliance and the agent identity lifecycle.
See also the Dock for real estate pillar, Dock for finance, and Dock for sales.
CTA
If you run a CRE portfolio and want the agent's monthly draft to land in a reviewable, signable surface rather than a shared inbox, book a workspace walkthrough with the Dock team.
FAQ
Does the agent ever publish a report without human approval? No. Rows in Monthly Portfolio Reports require a signed reviewer before the PDF generator includes them. Unsigned rows stay in draft state.
What happens if Yardi numbers change after the agent drafts? The agent re-fetches on review open. If a balance has drifted from the drafted value, Dock flags the diff inline and the reviewer can return the row for redraft. The platforms remain the source of truth.
Who is the agent acting as, legally? Atlas has its own identity, not a borrowed employee account. The signed row records both the agent that drafted and the human that approved.
Can multiple asset managers review the same row? Yes. The reviewer field accepts multiple signers when policy requires dual approval, for example assets above a dollar threshold. Each signature is recorded with timestamp and identity.