Code Navigation with Serena
As this app grows past a handful of files, an AI reading raw text starts making mistakes — missing a usage of a function, editing the wrong file, re-reading the whole project just to make one small change. Serena fixes that by giving the AI a real map of your code: every function, class, and every place each one is used — the same thing your editor’s “Go to Definition” does, but available to the AI.
What to actually ask for
Section titled “What to actually ask for”Serena is most useful when you ask for things that span more than one file:
- “Rename
ItemtoProducteverywhere it’s used, not just in the model file.” - “Find every place
get_current_useris called before we change its signature.” - “Add this field to the model and update every place that creates an
Item.”
If a multi-file change feels like it’s taking a while or missing spots, say explicitly: “use Serena to find every usage first.” Some models default back to their own search even when Serena’s available.
First time you use it
Section titled “First time you use it”The first time Serena touches this project, it scans the codebase and writes itself some notes in .serena/memories/. That’s normal — not an error — and can take a minute on a fresh checkout. Those notes are plain markdown; worth a skim once, so you know what the AI thinks this project is.