Case study
Asset Management Intelligence for a Top 3 US REIT: Portfolio Intelligence That Answers and Reports
How SquareShift built a fleet of Google ADK agents that return one governed figure and its cited reason, with a re-runnable Looker link on every figure.
Book a session →
Client
A leading lodging REIT whose asset-management and revenue teams report on hotels weekly, monthly and quarterly.
Industry
Hospitality & Real Estate
Services
Stack
Google Agent Development Kit (ADK) · Vertex AI Agent Runtime · Gemini · Looker · Knowledge Catalog · Vertex AI Search · BigQuery · Cloud Run
How SquareShift delivered it.
The challenge
A portfolio answer needs a governed figure and its reason, and no single system held both.
Reconciling the two was manual, and every recurring report was rebuilt each cadence.
Wrong numbers looked credible, and AI reports changed between runs.
What we did
SquareShift built narrow agents on Google's Agent Development Kit (ADK). Each agent has its own dependencies, tests and deployment, and an orchestrator composes them over the Agent-to-Agent (A2A) protocol.
The governed-data agent holds no documents. The commentary agent has no warehouse access. Neither calls the other.
Field names come from the governed catalog. The agent searches 4,852 LookML entries in Knowledge Catalog live for every question.
Report queries are fixed in code, so the same period returns the same figures on every run. The model writes only the prose over the results.
Every number-protecting rule is a guard, callback or configuration setting in code, each behind its own switch and log line.
Every figure returns with a clickable Looker explore URL. Every claim is cited to its document. Document ingestion runs behind a human review gate.
How it fits together
An orchestrator routes; narrow agents answer. The orchestrator has no data access of its own. It calls each peer as a tool that returns an answer.
Five agents run on Vertex AI Agent Runtime: the governed-data agent, the commentary agent, the correspondence agent, and two report agents for the monthly report and the QBR.
A question moves through seven steps: ask, authenticate, route, resolve the field, query, explain, and answer with the figure, its Looker URL and its source.
The results
A question that meant opening Looker and searching a document library is now one question in a chat window.
On the ten-question benchmark, prompt tokens fell from 465,000 to 108,000 (77% fewer). Wall-clock time fell from 883 s to 139 s (84% less), with correctness held or improved.
These figures come from the project's own benchmark tests.
Why it worked
Every guard sits behind its own switch with a log line that names it. Any one can be reverted alone.
1,577 automated tests across nine services in staging and production back the rollout.
Nine services deploy in dependency order, with credentials from Secret Manager.
A model that chooses its own query cannot promise the same report twice, so report queries have to be fixed in code.
Architect, SquareShift