Cross-tool Semantic Search

Documentation sprawl is a real problem for most teams. Specs live in Confluence, tickets in Jira, designs in Figma, and finding anything across all three requires knowing where to look, remembering what it was called, and hoping whoever wrote it used the same terminology you’re searching for. Keyword search doesn’t help much when you’re not sure how something was worded. And when context about a feature is split across all three tools, there’s no easy way to get the full picture in one place.

We wanted to see if we could fix this by building a single interface that searches across all three sources using semantic similarity, and that could answer questions by pulling together everything relevant and synthesizing it.




Don’t start with AI, start with the question. The biggest lesson here wasn’t about which AI architecture to use. It was that the quality of the answer depends almost entirely on asking the right question of the right data. When someone types a vague query, a naive system just searches for that vague query and returns mediocre results. We added a step that rewrites and refines the query before touching the data, and that single change had more impact on quality than anything else we tried. The equivalent in a human context: a good researcher doesn’t just Google your exact words, they figure out what you’re actually trying to find.

Use AI where judgment is needed, not everywhere. Early versions used AI agents for every step of the process, including steps that were really just data lookups with no decision-making involved. That added complexity and introduced failure points for no reason. The final solution uses AI only where it genuinely helps: understanding and refining the question, and synthesizing the answer. Everything in between is just code. Knowing where AI adds value and where it doesn’t is a skill in itself.

The right architecture isn’t always the most sophisticated one. We tested four different approaches, including multi-agent orchestration patterns that are popular in the AI space right now. The one that worked best was also the simplest: a clear sequence of steps, AI where needed, plain functions everywhere else. Teams that chase complexity often end up with systems that are harder to maintain and no more accurate.