Our client roster lived only on the platform where we talked to clients — nowhere queryable. I turned it into a data pipeline feeding an optimized Obsidian clone: one force-directed graph — every client a node, sized by contract, colored by health. Click a node and the whole file opens. A Hetzner-hosted agentic layer re-parses and normalizes the data daily, so it never goes stale.
On top sits a RAG agent: the team asks in plain English — “which clients are at risk and why?” — and gets a grounded answer instead of digging through files. It reshaped how the team works: account reviews take minutes instead of combing scattered notes, everyone operates from the same up-to-date picture, and at-risk clients surface before they become fires — a more organized, more efficient workflow.