{"full_name":"abhigyanpatwari/GitNexus","owner":"abhigyanpatwari","name":"GitNexus","url":"https://github.com/abhigyanpatwari/GitNexus","description":"GitNexus: The Zero-Server Code Intelligence Engine ","homepage":"https://gitnexus.vercel.app","topics":[],"language":"TypeScript","license":"NOASSERTION","avatar":"https://avatars.githubusercontent.com/u/126312502?u=9365d82c85671bbd26d1ba38a373ec95ee78dae1&v=4","created_at":"2025-08-02T23:20:31Z","pushed_at":"2026-11-10T09:19:39Z","metrics":{"stars":48386,"forks":5240,"watchers":155,"issues":1360,"prs":2431,"releases":0,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":35},"growth":{"day":{"stars":28,"forks":3,"base_day":"2026-11-09"}},"history":{"dates":["2026-11-09","2026-11-10"],"stars":[48358,48386],"forks":[5237,5240],"watchers":[155,155],"issues_open":[null,null],"prs_open":[null,null]},"boards":{},"same_owner":[],"issues":[{"number":2194,"title":"Tree-sitter compatibility workarounds","comments":146,"created_at":"2026-06-14T10:15:37Z"},{"number":3695,"title":"[Bug] scope-resolution thrashes into swap on a refactored Java branch: same repo runs 16 min on integration branch but >2h unfinished on refactor branch","comments":21,"created_at":"2026-10-23T08:51:33Z"},{"number":2629,"title":"Add support for field-annotated thrift clients (e.g. @ThriftClient)","comments":18,"created_at":"2026-07-22T07:14:43Z"},{"number":1165,"title":"fix(graph-bootstrap): fail closed on GitNexus provider failures","comments":11,"created_at":"2026-04-28T14:55:44Z"},{"number":1351,"title":"Add opentelemetry support to improve observability","comments":9,"created_at":"2026-05-05T12:05:30Z"},{"number":344,"title":"Community: Operational toolkit for production GitNexus deployments (25+ repos)","comments":8,"created_at":"2026-03-18T01:49:04Z"},{"number":3609,"title":"Tracking: remaining issue triage work and verification — 17 October 2026","comments":7,"created_at":"2026-10-17T05:26:28Z"},{"number":3500,"title":"In our evaluation, GitNexus 1.6.12 showed no measurable accuracy gain for coding agents and usually increased their cost","comments":6,"created_at":"2026-10-06T06:31:07Z"}],"discussions":[{"number":3668,"title":"GitNexus is #1 in MCP servers for developers on Archestack (badge, if you want it)","comments":0,"category":"Show and tell","created_at":"2026-10-21T15:30:39Z"},{"number":3493,"title":"Independent benchmark of GitNexus 1.6.12 with Claude Code and Codex agents: results and data (mostly n=1)","comments":4,"category":"General","created_at":"2026-10-06T03:12:59Z"},{"number":3176,"title":"AionUi support for GitNexus","comments":0,"category":"Q&A","created_at":"2026-09-04T13:10:21Z"},{"number":2266,"title":"Full RAM usage leads to crash PC","comments":1,"category":"Q&A","created_at":"2026-06-21T19:20:32Z"},{"number":2255,"title":"Succesfully Integrated kilo with Gitnexus","comments":1,"category":"General","created_at":"2026-06-19T16:43:47Z"},{"number":2063,"title":"From Grep to Graph: Why Coding Agents Need LSP and GitNexus to Understand Your Codebase","comments":1,"category":"General","created_at":"2026-06-06T14:27:36Z"},{"number":2048,"title":"Feature Request: Native Luau (Roblox) Support for Symbol Indexing and Dependency Analysis","comments":0,"category":"Ideas","created_at":"2026-06-05T01:14:10Z"},{"number":1953,"title":"Intel GPU support for embeddings via OpenVINO","comments":0,"category":"Ideas","created_at":"2026-05-31T15:28:04Z"}],"latest_release":{"name":"v1.6.12","tag":"v1.6.12","published_at":"2026-09-12T21:40:04Z","body":"# GitNexus v1.6.12\n\n> **The portable-index release.** Index artifacts no longer have to live inside the checkout — `GITNEXUS_STORAGE_PATH` and `GITNEXUS_STORAGE_ROOT` put them wherever an orchestrator wants them, and `GITNEXUS_CONTENT_RETENTION` decides how much source text comes along. Objective-C joins the supported languages, staleness stops calling an unresolvable index `fresh`, and long embedding jobs resume instead of restarting. 62 merged pull requests since v1.6.11.\n\n## ✨ Highlights\n\n- 📂 **Index artifacts can live outside the checkout** — `GITNEXUS_STORAGE_PATH` writes one repository's graph, metadata, parse caches, locks and branch indexes to any absolute directory; `GITNEXUS_STORAGE_ROOT` gives many repositories one shared root with an isolated `<repo-basename>-<canonical-path-hash>/` slot each. Built for managed and short-lived workspaces where something else collects, promotes or cleans up the output. Opt-in — unset, it is still `<repo>/.gitnexus/`. (#3060)\n- 🗜️ **Content retention tiers** — `GITNEXUS_CONTENT_RETENTION=full|symbol|none` chooses how much source-derived text is persisted at generation time: full file and symbol text, symbol snippets only, or graph structure with no source bodies. Graph-oriented CLI, MCP and UI workflows behave the same at every tier, and each surface now says plainly when retention or a missing checkout is hiding file text rather than returning a blank. (#3060)\n- 🍎 **Objective-C is a supported language** — a vendored `tree-sitter-objc` grammar and a deterministic provider covering interfaces, implementations, categories, methods, properties and header classification. (#3179)\n- 🧭 **The index stops overstating what it knows** — a `rev-list` failure on a pruned branch-pinned clone used to collapse into `fresh`; staleness now reports `current`, `behind`, `diverged` or `unknown`. `GET /api/repos` and `GET /api/repo` expose the indexed branch, `lastCommit` and how far behind it is, and `doctor` separates vector capability from repository index state. (#3257, #3232, #3199, #3228)\n- ♻️ **Long embedding jobs are resumable** — `gitnexus embeddings` fills an existing index in place: every successful batch is durable, reruns skip vectors whose content hash still matches, endpoint timeouts retry under `GITNEXUS_EMBEDDING_RETRY_TIMEOUTS`, and the structural graph is not rebuilt. Sync fails closed on foreign embedding identity and vector-width drift. (#3065, #3260)\n- 🛡️ **Durability on the write path** — a parse-cache chunk whose durable generation could not be reset is retired instead of leaving a stale generation reachable through the coherence gate, stale file-lock reclamation is guarded, and the LadybugDB pool-adapter checkpoint race is fixed with `@ladybugdb/core` pinned to 0.18.3. (#3271, #3234, #3189)\n\n---\n\n## 🚀 Added\n\n- **Configurable index artifact storage** — `GITNEXUS_STORAGE_PATH` writes one repository's index artifacts (graph data, metadata, parse caches, locks, branch indexes) to a caller-selected absolute directory, and `GITNEXUS_STORAGE_ROOT` gives several repositories one shared external root with an isolated `<repo-basename>-<canonical-path-hash>/` slot each. `GITNEXUS_STORAGE_PATH` wins when both are set. Opt-in: unset, GitNexus still writes to `<repo>/.gitnexus/` (#3060)\n- **Generation-time content retention tiers** — `GITNEXUS_CONTENT_RETENTION=full|symbol|none` chooses how much source-derived text is persisted: full file and symbol text, symbol snippets only, or structural graph data with no source bodies. Graph-oriented CLI, MCP and UI workflows are unchanged; CLI, MCP, the HTTP API and the web UI now say so explicitly when retention or a missing checkout hides file text. Storage and retention compatibility metadata is persisted, so an index is rebuilt when those semantics change (#3060)\n- **Objective-C is a supported language** — vendored `tree-sitter-objc` grammar with a deterministic provider covering interfaces, implementations, categories, methods, properties and header "},"readme":true,"readme_zh":false,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}