Skip to content

Releases: dormonbear/codegraph

v0.5.7

Choose a tag to compare

@github-actions github-actions released this 20 Aug 03:50

New Features

  • Synced the upstream engine (@colbymchenry/codegraph, post-v1.5.0 development line). The headline for fork users is a large codegraph_explore retrieval overhaul: relevance scoring was rewritten so incidental name collisions no longer crowd out the symbols you asked about, the byte budget is now handed out in proportion to each file's score instead of first-come-first-served, and within one session explore points back at source it already sent you rather than sending it twice. Together these mean more of the answer, and less filler, in the same response.
  • codegraph install now offers GitHub Copilot as a target — VS Code, the Copilot CLI, and JetBrains IDEs.
  • Union declarations (union in C, C++, Objective-C, and Rust) are now indexed as their own symbols, and trait/interface dispatch resolves through the types that implement them.
  • Files generated by a build tool are now recognized by their content rather than only by their path, so generated output stops competing with your real source in search and explore results.

Fixes

  • Long-running MCP sessions that were killed by the watchdog no longer leave the SQLite write-ahead log growing without bound on disk.
  • Python code that names a class without calling it now produces a reference to that class, so callers/impact queries see the link.

Note: this sync rebuilds each project's index once on first use after upgrading. On a large Salesforce org that first index will take its usual full-run time; subsequent syncs are incremental again.

Upstream's self-hosted telemetry service (its ingest Worker and admin dashboard) was deliberately left out of this fork — it is upstream's own infrastructure and the fork does not operate it.

v0.5.6

Choose a tag to compare

@github-actions github-actions released this 22 Jul 02:51

New Features

  • Synced the upstream engine (@colbymchenry/codegraph v1.5.0). The headline is a native extraction kernel: upstream reimplemented the AST walker in Rust for the mainstream languages (TypeScript/JavaScript, Java, Python, Go, C/C++, Rust, C#, Ruby, PHP, Swift, Kotlin, Scala, Dart, Lua/Luau, R), so first-time indexing of those codebases is substantially faster. The kernel is optional and per-language — Salesforce (Apex/LWC/Visualforce/Aura) keeps its existing wasm parser unchanged, so nothing about SF indexing behavior changes. Also new upstream: several more languages (Erlang, CFML, COBOL, VB.NET, Solidity, Terraform/OpenTofu, Nix, ArkTS) and a large batch of indexing/resolution speedups.

v0.5.5

Choose a tag to compare

@github-actions github-actions released this 30 Jun 08:04

New Features

  • Synced the upstream engine (@colbymchenry/codegraph v1.1.6). Highlights for fork users: indexing now parses files in parallel across a worker pool, so first-time indexing of a large org is faster; the MCP tools advertise a read-only hint so they work in Cursor's Ask mode; C++ coverage improved (inheritance from templated base classes, stack/brace construction, and export-macro-annotated classes); and codegraph_explore surfaces a named method's signature type and reports an accurate result count.

Fixes

  • codegraph upgrade now stays on the fork instead of trying to replace itself with upstream @colbymchenry/codegraph. It previously resolved upstream's GitHub releases and ran npm install -g @colbymchenry/codegraph, which collided with the fork's own codegraph command and failed with EEXIST. The upgrade now reads its own package name and repository, so it checks the fork's releases and reinstalls codegraph-sf.
  • Picked up upstream indexing fixes: embedded git repos recorded as gitlinks now respect .gitignore, Android resource XML is excluded by default, a poisoned or oversized index rebuilds cleanly, and the codegraph query CLI no longer renders raw search scores as nonsensical percentages.

v0.5.4

Choose a tag to compare

@github-actions github-actions released this 24 Jun 02:06

New Features

  • Synced the upstream engine (@colbymchenry/codegraph v1.1.0). Highlights for fork users: dynamic-dispatch flows now resolve through more frameworks (Spring publishEvent, MediatR Send/Publish, Celery .delay(), Sidekiq, Laravel events, Vuex/Pinia/RTK Query); Java call chains follow Lombok-generated members; C/C++ function-pointer dispatch resolves; Go GoFrame routes bind to their controllers; and React forwardRef/memo/styled components are recognized.
  • Map custom file extensions to a language with an optional codegraph.json at the project root (e.g. ".tpl": "php") — handy for org-specific extensions.
  • The MCP server now serves tools in a monorepo even when the root has no index — query a sub-project that has its own .codegraph/ via projectPath.

Fixes

  • The default MCP tool surface now follows upstream's codegraph_explore-only default (the Salesforce field/object tools stay listed — re-enable any other tool with CODEGRAPH_MCP_TOOLS).
  • Files reached through an in-repo symlink that points outside the repo are now indexed; submodule worktrees are no longer double-indexed.

Note: this sync raises the Node floor to 20 and switches to Node's built-in SQLite — no native build step. Upgrading rebuilds each project's index once on first use.

v0.5.3

Choose a tag to compare

@github-actions github-actions released this 17 Jun 09:35

Fixes

  • codegraph_explore no longer times out on large Salesforce orgs. A ranking step that looks for the project's "core" file ran a query that grew with the square of how many symbols share a file — on an org with a bundled static-resource main.js holding thousands of symbols it could run for tens of minutes, freezing the MCP server until its own watchdog killed it (the agent saw MCP error -32001: Request timed out). The query is now proportional to the number of edges instead, returning in about a second with identical results.

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 17 Jun 03:38

Fixes

  • The first query after opening a project no longer hangs on large Salesforce orgs. When a git branch-switch or pull dirties tens of thousands of metadata files, CodeGraph reconciles them in the background instead of blocking your first codegraph_explore / codegraph_search until the whole catch-up finishes — it now serves the (slightly stale) graph after a brief wait while the sync completes behind the scenes. Set CODEGRAPH_CATCHUP_GATE_TIMEOUT_MS=0 to restore the old wait-for-full-sync behavior.

New Features

  • Synced the upstream engine — impact analysis now follows same-file value references (a value assigned in one place and used in another) across C/C++, C#, Dart, Java, Kotlin, Scala, and more, so "what breaks if I change this" is more complete.

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 15 Jun 10:16

Fixes

  • Salesforce object queries no longer hang on large orgs. codegraph_object_search / codegraph_object_impact on an object with many fields (and an org with hundreds of thousands of edges) could take minutes; they now return in well under a second. Same results, far less work.
  • The on-disk graph no longer balloons: the database's write-ahead log is now bounded and reclaimed after each sync instead of growing without limit (a large re-index could otherwise leave a multi-gigabyte file behind).
  • Re-scanning a Salesforce project for changes is faster — the schema-metadata sweep dropped redundant filesystem work.

New Features

  • Synced the upstream engine (@colbymchenry/codegraph v1.0.1) — adds R language support and upstream extraction/resolution improvements, all under the unchanged codegraph command.
  • New codegraph daemon gc command reaps leaked/orphaned MCP daemon processes (use --dry-run to preview). Handy if background codegraph processes accumulate across many editor sessions.

Note: upgrading rebuilds each project's index once on first use — the engine's extraction format advanced with the upstream sync.

v0.5.0

Choose a tag to compare

@dormonbear dormonbear released this 14 Jun 12:36

New Features

  • The SObject schema is now indexed even when force-app/main/default/objects/ is .gitignored — common on large or org-managed projects, where the field/object tools would otherwise come up empty. The schema metadata is always picked up.
  • Usage inference: when an object or field is referenced from Apex/SOQL/LWC but has no metadata in source (standard objects like Account, managed-package objects, or a gitignored schema), CodeGraph now infers it from how it's used so codegraph_object_* / codegraph_field_* still answer. Inferred entries are labelled (no field types or relationships — real metadata always wins).
  • Polymorphic lookups now link to every target object, not just the first.
  • codegraph_object_impact now also lists the object's own parent lookups (what it depends on), alongside the child objects that orphan when it's deleted.
  • Master-detail relationships are distinguished from plain lookups.

v0.4.0

Choose a tag to compare

@dormonbear dormonbear released this 14 Jun 12:36

New Features

  • New SObject object layer with three MCP tools — codegraph_object_search, codegraph_object_usages, and codegraph_object_impact. Ask where an object is used (SOQL FROM, DML, List<Obj>, trigger on Obj, Visualforce standardController) and get the full blast radius before renaming or deleting it: code usages plus the declarative metadata that breaks silently (Page Layouts, Validation Rules, Flows, Permission Sets, Profiles, Record Types), every field the object owns, and the other objects that have a lookup to it (they orphan on delete).

v0.3.0

Choose a tag to compare

@dormonbear dormonbear released this 14 Jun 12:36

New Features

  • Synced the upstream engine — Astro support, callback/function-as-value capture in callers & impact, chained factory-call resolution across more languages, PHP/Ruby symbol coverage, and more.
  • The Salesforce field tools (codegraph_field_search / _usages / _impact) are now listed by default in the agent's tool surface, so agents reach for them without configuration.