Watch a coding agent work and its moves look primitive: list files, search text, read a few lines, run the tests, try again. That is the point. Instead of holding the whole repo in context, the agent asks the repo questions with cheap, named commands, and follows the names the code already uses (functions, imports, routes, error strings, config keys) until the answer is localized.