Skip to content

Is there a repository map or RAG feature? #2108

Closed

Description

@vldF

Repository map (Aider, continue) allows LLM automatically understand high-level structure of a codebase to be able to query some detailed info about it if needed

RAGs are also allows to optimize LLM work. Tool indexes the whole codebase with embedding LLM, then on user request it appends the most similar files to the context

As far as I can see there are no these features right now. Do you have plans to support them?

Activity

  1. rekram1-node commented on Aug 20, 2025

    @rekram1-node
    Contributor

    @vldF we do inject information about environment to llm like your project tree, example (this is excerpt from opencode repo):

    .github/
    	workflows/
    		deploy.yml
    		duplicate-issues.yml
    		guidelines-check.yml
    		notify-discord.yml
    		opencode.yml
    		publish-github-action.yml
    		publish-vscode.yml
    		publish.yml
    		stats.yml
    		typecheck.yml
    cloud/
    	app/
    		public/
    			favicon.ico
    

    ^^ this is injected into system prompt

  2. vldF commented on Aug 20, 2025

    @vldF
    Author

    @rekram1-node what if my codebase is a large monorepository and I'd like to send only part of it? Also, the files list doesn't provide any info about files content (repository map provides it, for example; RAG too)

  3. rekram1-node commented on Aug 20, 2025

    @rekram1-node
    Contributor

    what if my codebase is a large monorepository and I'd like to send only part of it

    We only list up to 200 files

    Also, the files list doesn't provide any info about files content

    correct

  4. justindonnaruma commented on Aug 20, 2025

    @justindonnaruma

    @vldF - I was wondering about this as well. I think I could build this functionality outside of core as a plugin/tool, and then we could update the global Agents.md file to make sure it uses the RAG before reaching out to the internet, or using other tools.

  5. Volko61 commented on Aug 30, 2025

    @Volko61

    According to https://www.youtube.com/watch?v=m0X_hmLBhwo
    It might be very relevent to use AST

  6. taqtiqa-mark commented on Oct 14, 2025

    @taqtiqa-mark

    @vldF - I was wondering about this as well.

    You might like to add your feedback on the /add command being discussed here:
    #1990

    @vldF is #1990 sufficiently on-point for you to close this issue and track developments there?

  7. taqtiqa-mark commented on Oct 14, 2025

    @taqtiqa-mark

    ^^ this is injected into system prompt

    @rekram1-node, I am pretty sure this is an abuse of the system prompt esspecially in non-trivial workflows (see #3112) where the context will change as the workflow progresses.

    But perhaps there is a better issue to track that discussion?

  8. rekram1-node commented on Oct 14, 2025

    @rekram1-node
    Contributor

    it is pretty standard in coding agents to include information about the current project, can you outline why it is an abuse? I could see argument for user prompt usage tho

  9. taqtiqa-mark commented on Oct 14, 2025

    @taqtiqa-mark

    it is pretty standard in coding agents to include information about the current project

    Agreed, the question is which prompt does the information belong.
    From the LLM view this is: System-Prompt (one-off), or User-Prompt (multiple)?

    Ack. this can be Vendor dependent: X.ai has collections, but I don't believe the node ai package supports this yet?

    In the node ai abstractions this is: System-Message vs User-Message vs Assistant-Message.

    Using the abstractions OC introduces this is, IIUC: Mode-Prompt (current behavior?), Agent-Prompt-Text or Context-Text

    can you outline why it is an abuse?

    Generally, "The system prompt to use that specifies the behavior of the model." A list of files does not specify the behavior of the model.

    See my earlier doc suggestions

    Only in very narrow use cases will the relevant files be unchanging across the session:

    ... esspecially in non-trivial workflows (see #3112)

    When /add lands the system prompt should only include such data if the user configures it, default could be system_prompt_files: true, but in general users will employ /add ... at the start of a CLI session, or in more complex workflows the agent/subgents will /add ...; /drop ... as the workflow progresses.

  10. vldF commented on Oct 16, 2025

    @vldF
    Author

    Yeah, let's move to another discussion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions