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.

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 with tenant + repo namespacing; operates in stub mode without Neo4j

Install

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

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

# 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 Neo4j
    summary = await builder.build_graph(
        repo_path="/path/to/repo",
        tenant_id="local",
        repo_id="my-repo",
    )
    print(summary)

asyncio.run(main())

License

BSD 3-Clause — 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.2.1.tar.gz (43.5 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.2.1-py3-none-any.whl (61.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for codesteward_graph-0.2.1.tar.gz
Algorithm Hash digest
SHA256 d77648ee624b39891dab4f40a8090477e86ccd8c6c5339451a60d92c899839d1
MD5 b7db9750fe7bba337a6ca7a103ec24e3
BLAKE2b-256 e248dc71b96dbb873a43f5bdc699116fe9a9da9253e1e6d5595822a4120532db

See more details on using hashes here.

Provenance

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

Publisher: release.yml on bitkaio/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.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for codesteward_graph-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8ac15cd0482d6017da82a4c9bf1893e0c52be1039458a0583cd0be9763c51455
MD5 04da7a695d2d43c88dc7357cffa239cb
BLAKE2b-256 45e93c7984319b95a33999f41dabc2072235d1982003b060479c7be0f31512d2

See more details on using hashes here.

Provenance

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

Publisher: release.yml on bitkaio/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