Skip to content

Add coderag query verb: NL search + structured filters over the index #9

Description

@ryan75195

Implement a `coderag query` CLI verb that consumes a `.coderag/index.db` produced by `coderag index` and returns matching chunks ranked by embedding similarity to a natural-language query.

Scope

  • `coderag query [--db ] [--top-k N] [--format text|json] [--kind ] [--project ] [--namespace ] [--is-async]`
  • Embed query with the same model the index used (`text-embedding-3-large`, 3072 dim)
  • Apply structured filters (kind/project/namespace/is-async) BEFORE KNN where possible to narrow the search
  • Run KNN against `chunk_embeddings` virtual table
  • Default output: text with `relative_file_path:line_start fully_qualified_symbol_name score` and the chunk source body
  • `--format json` emits machine-parseable output

Out of scope (this issue)

  • Re-ranking with BM25 or other hybrid approaches
  • MCP server interface (separate issue)
  • Filters across child tables (`chunk_attributes`, `chunk_method_parameters`)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions