Skip to content

Features

A structural understanding of your code, end to end

BBM-Atlas parses, maps, remembers, retrieves and serves, then keeps what reaches the model small. Here is everything it does, grouped the way it is built.

01 · Understand

It reads code the way a compiler does

Parsing is deterministic and involves no LLM: tree-sitter turns source into a language-independent model of symbols and relationships.

  • Twelve languages, one model

    Python, JavaScript, TypeScript and TSX, Go, Rust, Java, C#, Ruby, PHP, Kotlin, C and C++ are parsed symbol by symbol.

    • Swift, Scala, Dart, Elixir, Lua, shell and SQL are indexed as whole-file modules
    • Fast and repeatable: the same code always produces the same graph
    • Re-indexing re-parses only the files that changed
  • A structural map across files

    Calls, imports and inheritance are resolved across the whole repository, not file by file.

    • Qualified names link a call site to the definition it reaches
    • Relationships are typed, so you can follow only calls, or only imports
    • Written to Neo4j, so the map survives restarts and stays queryable
  • Confidence on every edge

    Every relationship the graph asserts is tagged extracted, inferred or ambiguous, so you know how far to trust an answer.

    • Queries take a minimum confidence and ignore weaker edges
    • Ambiguous resolutions are listed for review instead of silently guessed

02 · Reason

It answers the questions that matter before a change

A queryable graph engine turns the structural map into answers: what depends on this, how are these connected, where is the risk.

  • Impact analysis

    Name a function or class and see everything that would be affected by changing it, hop by hop.

    • Bounded by depth and filtered by relationship type
    • Test code included or left out, as you choose
    • Runs in memory or against the Neo4j graph
  • Paths, cycles, communities

    Find how two symbols connect, where dependency cycles hide, and which modules form natural clusters.

    • Shortest paths between any two qualified names
    • God-node ranking to spot the code everything leans on
    • Community detection over the dependency graph
  • Graph query

    Ask in plain words; entry points are resolved by combining lexical and vector search, then returned with their neighbourhood.

    • Ranked candidates, each saying how it matched
    • A subgraph around the best match, radius of your choosing

03 · Remember

It keeps what the team learns

Beyond the code itself, BBM-Atlas keeps summaries of what each part does, the facts you tell it, and which answers turned out to be useful.

  • Repository memory

    Hierarchical, mechanically generated summaries of what each file, module and package is for.

    • Built during indexing, no LLM required
    • One of the four sources every search draws on
  • A reflection engine that learns

    Record whether an answer helped, and the lessons adjust future ranking: useful nodes rise, misleading ones sink.

    • Outcomes cite the nodes and edges behind an answer
    • Grounded agent runs record their outcomes automatically
    • Every search result shows its lesson adjustment
  • Facts on demand

    Tell it something once (a convention, a gotcha, a decision) and recall it later, ranked by relevance.

    • Remember, recall and forget over every interface
    • Scoped per repository and per session

04 · Retrieve

Four sources, one ranked answer

Search blends structure, memory, the graph and semantic vectors, weighted toward structural truth over text that merely sounds similar.

  • Fused, intent-aware retrieval

    Structure, memory, graph and semantic results are merged into one ranking, boosted by what the question is asking for.

    • Semantic search over Qdrant vectors or an in-memory index
    • Local embedding models supported, so code never leaves the machine
    • When a source fails, results say so instead of quietly shrinking
  • Twelve specialist agents

    Architecture, navigation, refactoring, documentation, testing, debugging, security, migration, optimization, repository memory, knowledge graph and review.

    • Grounded in retrieval results, not free-floating prompts
    • Tasks can depend on one another within a run
    • Any LLM through the gateway, including local ones

05 · Serve

Every door opens onto the same engine

The REST API, the MCP server and the CLI call the same code, so an AI assistant, a script and a person all get the same answer.

  • MCP server

    Thirty tools for Claude Code, Cursor, JetBrains and any other MCP host, over stdio.

    • bbm-atlas mcp install registers it with Claude Code
    • Indexing, search, impact, the graph, memory and agents
  • REST API and CLI

    37 REST routes and 39 CLI commands, one per capability, with API keys when you need them.

    • Background index jobs with live progress and cancellation
    • Exit codes and JSON output made for scripts
  • A web console

    A browser console served by the API: store health, indexing with live progress, search, a graph explorer and impact views.

    • Each result links to the next view
    • No build step, no extra service

06 · Economise

Cheaper, smaller, private by default

A compression layer shrinks what reaches the model without losing information, and everything can run against local models.

  • Content-aware compression

    Specialised compressors for JSON arrays, source code, diffs, logs, search results, prose and images.

    • Code is compressed along its syntax tree, not by truncation
    • Output is never larger than the input
  • Reversible by design

    Compress-Cache-Retrieve keeps every original under a content hash, so the model can ask for the full text when it needs it.

    • A marker in the compressed text says how to retrieve it
    • Savings tracked in a ledger and a dashboard
  • A drop-in proxy, secure defaults

    Point an OpenAI- or Anthropic-compatible client at bbm-atlas proxy and its traffic is compressed with no code changes.

    • Binds to loopback, caps request bodies, requires API keys in production
    • Docker Compose stack publishes ports on 127.0.0.1 only

Index your first repository in minutes

A fresh checkout runs entirely in memory, with no services to set up. Add Postgres, Neo4j, Qdrant and Redis when you are ready.