Interested in any of the bompus/codegraph fork's work?
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 15/100
Research direction
Start with the fork’s README sections “About this fork” and “What the fork adds,” then read docs/benchmarks/fork-vs-upstream-node-bun-2026-10-03.md for the comparison details. The issue asks which changes the maintainer would consider, not for a defined implementation; wait for a decision before choosing work, since there is no concrete completion criterion yet.
Written by the indexing model from the issue text.
Description
Hi Colby,
I maintain bompus/codegraph, a fork that tracks main (merged through 6560052a, 1.6.2). Small fixes from it go to you as PRs, and thanks for carrying #2097 onto main as #2284. The rest has grown to about 530 commits, which is too much to send as PRs without asking first. So I'm asking: is any of it something you'd want, and in what shape? "None of it" is a fine answer, and the fork will keep going either way.
The fork's README has a section comparing it with main: About this fork. The short version:
No WebAssembly. Every language is parsed in the Rust kernel, and the WebAssembly parser and its fallback are gone. A file with syntax errors is extracted from the native parser's error recovery instead of being handed to a second parser. Name resolution for TypeScript/JavaScript, Python, Go, Java, Kotlin, PHP, C, C++, Rust and ArkTS also runs in the kernel. The cost: a platform without a prebuilt kernel needs a Rust toolchain. Details: Parsing, resolution and languages.
Newer Node.js and Bun. The fork runs on Node.js 22.13 and newer, including 25 and 26, and on Bun 1.4. main refuses Node 25 and newer, and refuses Bun because Bun reports itself as Node 26. The full test suite passes on Node 24.21.0, and passed on Node 26.10.0 and Bun 1.4.2 when last run on all three (2026-09-28). The floor is 22.13 because that is the first release with node:sqlite unflagged, so Node 20 and early 22 releases no longer work.
Speed and memory. These numbers are from the README's Measured results, measured 2026-10-03 against main at 6560052 (1.6.2) on a 16-vCPU WSL2 host. Index times are the median of two runs, sync times the median of four.
| main, Node 24 | fork, Node 24 | fork, Bun 1.4 | |
|---|---|---|---|
| Full index, n8n (24,434 files) | 168.9 s, 9.45 GiB peak | 78.4 s, 6.33 GiB | 79.1 s, 5.76 GiB |
| Full index, CPython (3,708 files) | 94.7 s, 8.34 GiB | 45.5 s, 6.41 GiB | 45.1 s, 5.73 GiB |
| One-file sync, n8n | 13.2 s | 4.38 s | 4.06 s |
| One-file sync, CPython | 8.30 s | 4.67 s | 4.97 s |
| MCP server at idle, n8n | 4.77 GiB | 2.07 GiB | 1.22 GiB |
codegraph explore from the CLI, gin |
224 ms | 121 ms | 99 ms |
On Bun, peak index memory is 8 to 27% lower than on Node and the idle MCP server holds 37 to 41% less. Eight concurrent explores on n8n take 12% longer on Bun; contention between worker threads reading through Bun's SQLite is the suspected cause (oven-sh/bun#44084). A new git worktree is ready to query in 0.8 to 0.9 s, seeded from a sibling worktree's index, against 5.8 to 6.1 s for a full index. On 120 hand-graded call links from repowise, 73% of the links the fork keeps are correct (52 of 71), against 56% for main (48 of 85); most of that comes from declining uncertain links, not from resolving more. The method and scripts are in docs/benchmarks/fork-vs-upstream-node-bun-2026-10-03.md.
Python indexing got slower between 290e03f and 1.6.2. On the same host, main at 290e03f indexed pretix in 8.81 s and 9.13 s, and at 6560052 in 19.88 s and 19.86 s, with 104,109 edges against 81,229. CPython went from 35.6 s to 94.7 s across the two benchmark runs, though I only checked pretix on one host. I haven't bisected the 194 commits in between; I can if that helps.
Features main doesn't have. The README's What the fork adds lists them. They are session search over earlier agent transcripts (codegraph sessions, codegraph_sessions), markdown indexing, near-duplicate functions, change questions answered from a diff, worktree seeding, external HTTP endpoints, dispatch links for C function pointers, Drupal hooks, NgRx effects, React Native native modules and window.postMessage, and a Devin install target.
Questions
- Would you consider dropping the WebAssembly parser, or running resolution in Rust? If not, would you want the gains ported into your kernel's current structure instead?
- Would you take the Node.js 25+ and Bun support on its own?
- Which of the features, if any, interest you?
- Would you rather get work as small PRs you re-land, as you've been doing, or as a branch you pick commits from?
- I'm closing my open PRs that are too big to review unasked or that
mainhas since covered, and pointing them here. Of those still open, the smallest are #2306 (a follow-up to your #2283), #1764, #1972, #1983 and #1989, each under 100 lines.
Happy to re-run the benchmarks against current main, or answer anything here.
- Dominant language
- C
- Stars
- 73.2k
- Forks
- 4.7k
- Avg merge
- 2h 13m
- Merged PRs (30d)
- 418
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from colbymchenry/codegraph
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
colbymchenry/codegraph#2634 ·
Maintainers usually reply within 1 day
-
Windows: bundled Node v24.16.0 can abort at exit (nodejs/node#56645); please bundle Node >= 24.20.0Possibly taken @Ancienttwo claimed this 2 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
colbymchenry/codegraph#2617 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 Under an hour Newbie friendliness 72/100
colbymchenry/codegraph#2482 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
colbymchenry/codegraph#1900 · 2 comments · 5 reactions ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
colbymchenry/codegraph#1700 ·
Maintainers usually reply within 1 day
All issues in colbymchenry/codegraph
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OpenPrinting/cups#1772 ·
Maintainers usually reply within 1 day
-
tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
antoxa2584x/nfsu2-sw#44 · 1 reaction ·
Maintainers usually reply within 1 day