Skip to Content
Context Graph5. Search the code

Search the code

By the end of this page you will be able to find where something is handled without knowing what it is called.

Prerequisites

  • An application with at least one completed ingest (Run an ingest).
  • Admin or Developer role.

What makes this different from grep

This search matches meaning, not text. “Where is the order total calculated” finds the method that does it even if the word “total” never appears in it.

That is the point: on an unfamiliar codebase you do not know the names yet, which is exactly when text search is least useful.

The search console with its suggested starter questions

Ask well

ControlWhat it does
QuestionAsk in plain language, or name a symbol if you know it.
ResultsHow many code chunks to return.
HopsHow much graph structure to pull in around each hit.
RepoRestrict to one repository of the application.

The Try row offers starter questions. They are there to show you the register — describe the behaviour you are looking for, rather than guessing an identifier.

Ask thisNot this
”where do we capture payment”CaptureAsync
”how is a refund authorised”refund
”what runs when an order is cancelled”OrderCancelledHandler

Naming a symbol works when you already know it. The plain-language form works when you do not, which is the case this screen exists for.

Reading a result

Each hit returns three things together:

  1. The code, cut at a symbol boundary rather than at an arbitrary line count.
  2. A citation — repo/path:start-end — so you can quote exactly where it came from.
  3. The surrounding graph, when Hops is above zero: what this calls, what calls it.
A search result showing a code hit with its citation and the surrounding graph

That third part is what separates this from an ordinary code search. A hit arrives already knowing where it sits in the system.

💡

This screen is also how you judge whether the index is any good. Ask three questions you already know the answer to. If the right chunk is not near the top, the ingest is the thing to look at, not the question.

Common issues

  • “No hits above the threshold” — Name a concept rather than a symbol, or widen the Repo filter.
  • Hits come from the wrong repository — Set the Repo filter.
  • Results are stale — The index is pinned to the last ingest. Re-run one.
  • Nothing is indexed — The ingest may have stopped before the index stage. Check its history.