Oxagen Docs

GitHub

Sync a GitHub repository into the workspace knowledge graph as a typed code-graph — files, functions, classes, imports, calls, commits — keeping the graph fresh on every push.

GitHub logo

GitHub

Repo → typed code graph (files, functions, classes, imports, calls, commits).

The GitHub connector is the heaviest first-party connector. It produces a full typed code graph of a repository — files, functions, classes, imports, calls, commits — and refreshes it incrementally on every push via webhook. Public repos work via anonymous clone; private and organization repos go through the Oxagen GitHub App.

This connector is dedicated to code. The detailed semantics — node and edge inventories, time-travel queries, the M9 MCP catalogue, and per-repo manifest — live on the Code Graph page; the connector page below documents only the connector surface itself.

What gets ingested

SourceNode type
Repositorycode.repo
Filecode.file
Functioncode.function
Classcode.class
Module / import targetcode.module
Commitcode.commit
Authorperson
Pull request / issue / discussion / reviewgh.pr / gh.issue / gh.discussion / gh.review

Edges include structural (contains, defines, imports), semantic (calls, reads, writes, returns, validates), and bitemporal (authored_by, authored_at).

Real use cases

  • Agentic coding sessions — Claude Code, Cursor, Windsurf, VS Code connected via MCP can ask "who calls this function?" / "show me every place we write to this table" / "what did this commit change?" as graph traversals.
  • PR review priors — when a reviewer opens a PR, the agent can pull every previous PR that touched the same files, every commit that mentioned the same concepts, and every issue that referenced them — one cross-source neighborhood.
  • Refactor blast radius — the calls and imports edges turn "what does this change break?" into a literal neighborhood query rather than a grep.

Authentication

The connector uses a GitHub App installation (not a personal access token). The app's slug is configured via the GITHUB_APP_SLUG environment variable on the API service; tenants install the app onto the repos / orgs they want to ingest. See GitHub App (private repositories) for the install flow.

Sync semantics

  • Webhook-driven refresh — on every push, GitHub posts to the API; the worker re-parses only the files that changed (paths parameter on dispatch_connector_sync). Full re-walks are reserved for first sync and manual resync.
  • Sync schedulemanual, daily, or weekly are configurable for backup re-indexes (the webhook is the primary trigger).
  • Semantic edge inference — an LLM pass (gated by the enable_semantic_edges setting, on by default) infers READS / WRITES / RETURNS / VALIDATES between functions. Default model is FAST tier.

Settings (subset — see Code Graph for the full inventory)

KeyTypeDefaultDescription
include_pathsstring[]["**"]Glob filter for what's parsed.
exclude_pathsstring[]node_modules, .next, dist, *.d.tsAlways-skip globs.
languagesstring[]["typescript", "python"]Parser languages enabled for this repository. The source parser ships TypeScript / JavaScript and Python; the GitHub-metadata, CI, tests, and security passes apply regardless of language.
ingest_commit_historybooleantrueCreate code.commit nodes with diffs.
enable_semantic_edgesbooleantrueLLM inference for READS / WRITES / RETURNS / VALIDATES.
sync_schedulelistdailyOne of manual / daily / weekly.
commit_depthnumber100Commits to ingest on first sync.
min_import_edge_referrersnumber3Hub threshold for collapsing very-popular import targets.

Permissions

The Oxagen GitHub App requests read-only repository access. We don't read repository secrets, we don't write commits, we don't modify branch protections. Tokens are issued per installation and short-lived.


Get started free · Code Graph · GitHub App setup · Connectors overview

On this page