Skip to main content

Multi-language structural code graph builder — 13 tree-sitter parsers + Neo4j writer

Project description

codesteward-graph

Multi-language structural code graph builder — parses source repositories into LexicalNode + edge data and writes to Neo4j or JanusGraph.

Part of the Codesteward MCP project. For full documentation, setup guides, and the MCP server, see the main repository.

What it does

  • Parses 13 languages via tree-sitter AST (TypeScript, JavaScript, Python, Java, Go, Rust, PHP, C#, Kotlin, Scala, C, C++); COBOL via regex
  • Extracts functions, classes, imports, call graphs, inheritance chains, and auth guard annotations (GUARDED_BY / PROTECTED_BY edges)
  • Resolves cross-file call relationships in a single post-parse pass
  • Writes to Neo4j or JanusGraph with tenant + repo namespacing; operates in stub mode without a graph backend

Install

# Core languages (TypeScript, JavaScript, Python, Java)
uv add "codesteward-graph[graph]"

# All 14 languages
uv add "codesteward-graph[graph-all]"

# JanusGraph backend (alternative to Neo4j)
uv add "codesteward-graph[janusgraph]"

# Without tree-sitter (COBOL only; all other parsers will raise ImportError)
uv add codesteward-graph

Quick usage

import asyncio
from codesteward.engine.graph_builder import GraphBuilder

async def main():
    builder = GraphBuilder()          # stub mode — no graph backend
    summary = await builder.build_graph(
        repo_path="/path/to/repo",
        tenant_id="local",
        repo_id="my-repo",
    )
    print(summary)

asyncio.run(main())

License

Apache License 2.0 — Copyright (c) 2026, bitkaio LLC

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codesteward_graph-0.4.1.tar.gz (70.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codesteward_graph-0.4.1-py3-none-any.whl (95.2 kB view details)

Uploaded Python 3

File details

Details for the file codesteward_graph-0.4.1.tar.gz.

File metadata

  • Download URL: codesteward_graph-0.4.1.tar.gz
  • Upload date:
  • Size: 70.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for codesteward_graph-0.4.1.tar.gz
Algorithm Hash digest
SHA256 3607f89646f9d06c5467ea7d7a4bbcb7b695279847737c36679b4c04070329b5
MD5 bd9061b495e1f92968c83a1cc922b1b4
BLAKE2b-256 77392d674be1c3f25a4d891fac1ae5b4debfcc28e6c7c63c69e0d377227bd71e

See more details on using hashes here.

Provenance

The following attestation bundles were made for codesteward_graph-0.4.1.tar.gz:

Publisher: release.yml on Codesteward/codesteward

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codesteward_graph-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for codesteward_graph-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3288715ece7d23e003fa3199e9ea23c4f31fda748c9deb184550be054d13b3ea
MD5 4d3b7272f13cb4c105f944940bae4f44
BLAKE2b-256 6ec20aa11bd437450928e7af5e0d51065e4a24884fdd07474f8c7a10621a1355

See more details on using hashes here.

Provenance

The following attestation bundles were made for codesteward_graph-0.4.1-py3-none-any.whl:

Publisher: release.yml on Codesteward/codesteward

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page