For 2 years I built RAG apps for clients. They are not Code-Assistants but everytime I see code assistants solely relying on embeddings to find the right pieces as context, it feels wrong to me:<p>Code is very well structured. Based on a starting point (current cursor, current file, or results of an embedding search result) you would probably fair better to traverse the code tree up and down building a tree or using Abstract Syntax Trees (ASTs) as described in this blog post [4]. It's like a tree search in order to get relevant code pieces for a certain task, and it imitates what human coders do. It would integrate well into an agent loop to search relevant code.<p>Aren't there any open source code assistants and plugins that do this? All I see are embedding searches for the big projects such as cursor, cline or continue.<p>All I ever found were a few research efforts such as RepoGraph [1], CodeGraph [2] and one one codebase open sourced by Deutsche Telekom called advanced-coding-assistant [3]<p>1 <a href="https://github.com/ozyyshr/RepoGraph">https://github.com/ozyyshr/RepoGraph</a><p>2 <a href="https://arxiv.org/abs/2408.13863" rel="nofollow">https://arxiv.org/abs/2408.13863</a><p>3 <a href="https://github.com/telekom/advanced-coding-assistant-backend">https://github.com/telekom/advanced-coding-assistant-backend</a><p>4 <a href="https://cyrilsadovsky.substack.com/p/advanced-coding-chatbot-knowledge-graphs-and-asts-0c18c90373be" rel="nofollow">https://cyrilsadovsky.substack.com/p/advanced-coding-chatbot...</a>