codegraph-engine 3.0.0__tar.gz → 3.0.1.post1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {codegraph_engine-3.0.0/src/codegraph_engine.egg-info → codegraph_engine-3.0.1.post1}/PKG-INFO +307 -100
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/README.md +301 -94
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/pyproject.toml +9 -9
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/__init__.py +1 -1
- codegraph_engine-3.0.1.post1/src/codegraph/__main__.py +7 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/agent_brain.py +81 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/agent_capabilities.py +1037 -73
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/agent_rules.py +1 -0
- codegraph_engine-3.0.1.post1/src/codegraph/architecture_rules.py +123 -0
- codegraph_engine-3.0.1.post1/src/codegraph/changelog.py +170 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/cli.py +793 -1
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/context.py +97 -13
- codegraph_engine-3.0.1.post1/src/codegraph/dataflow_propagation.py +118 -0
- codegraph_engine-3.0.1.post1/src/codegraph/dead_code.py +387 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/epistemic.py +8 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/evidence_contract.py +13 -3
- codegraph_engine-3.0.1.post1/src/codegraph/federation.py +245 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/frameworks.py +63 -6
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/graph/traversal.py +150 -7
- codegraph_engine-3.0.1.post1/src/codegraph/graph_csr.py +218 -0
- codegraph_engine-3.0.1.post1/src/codegraph/incremental.py +150 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/classifier.py +5 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/indexer.py +1 -0
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/languages/__init__.py +1 -0
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/languages/cpp.py +457 -0
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/languages/go.py +459 -0
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/languages/jvm.py +583 -0
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/languages/rust.py +591 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/models.py +9 -1
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/parser.py +146 -9
- codegraph_engine-3.0.1.post1/src/codegraph/indexing/protocols.py +220 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/scanner.py +17 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/interrogation.py +80 -20
- codegraph_engine-3.0.1.post1/src/codegraph/lsp.py +318 -0
- codegraph_engine-3.0.1.post1/src/codegraph/lsp_bridge/__init__.py +16 -0
- codegraph_engine-3.0.1.post1/src/codegraph/lsp_bridge/bridge.py +102 -0
- codegraph_engine-3.0.1.post1/src/codegraph/lsp_bridge/client.py +207 -0
- codegraph_engine-3.0.1.post1/src/codegraph/lsp_bridge/models.py +71 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/mcp/server.py +312 -1
- codegraph_engine-3.0.1.post1/src/codegraph/memory/trajectory.py +282 -0
- codegraph_engine-3.0.1.post1/src/codegraph/multi_agent/__init__.py +13 -0
- codegraph_engine-3.0.1.post1/src/codegraph/multi_agent/coordinator.py +229 -0
- codegraph_engine-3.0.1.post1/src/codegraph/multi_agent/models.py +76 -0
- codegraph_engine-3.0.1.post1/src/codegraph/polymorphism.py +95 -0
- codegraph_engine-3.0.1.post1/src/codegraph/pr_review.py +296 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/process_lifecycle.py +22 -2
- codegraph_engine-3.0.1.post1/src/codegraph/reachability.py +198 -0
- codegraph_engine-3.0.1.post1/src/codegraph/reachability_index.py +74 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/refactor/__init__.py +12 -0
- codegraph_engine-3.0.1.post1/src/codegraph/refactor/patcher.py +348 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/refactor/renamer.py +3 -3
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/refactor/transactions.py +23 -12
- codegraph_engine-3.0.1.post1/src/codegraph/repair.py +233 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resolver.py +155 -2
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/retrieval_policy.py +16 -1
- codegraph_engine-3.0.1.post1/src/codegraph/roblox.py +2174 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/route_composer.py +7 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/__init__.py +6 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/db_watcher.py +2 -2
- codegraph_engine-3.0.1.post1/src/codegraph/runtime/otel_receiver.py +208 -0
- codegraph_engine-3.0.1.post1/src/codegraph/sandbox.py +215 -0
- codegraph_engine-3.0.1.post1/src/codegraph/security/supply_chain.py +188 -0
- codegraph_engine-3.0.1.post1/src/codegraph/security/taint.py +421 -0
- codegraph_engine-3.0.1.post1/src/codegraph/test_gen.py +437 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/ui/server.py +200 -39
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/watcher.py +2 -2
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1/src/codegraph_engine.egg-info}/PKG-INFO +307 -100
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph_engine.egg-info/SOURCES.txt +54 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_adversarial_edge_cases.py +6 -6
- codegraph_engine-3.0.1.post1/tests/test_agent_memory.py +73 -0
- codegraph_engine-3.0.1.post1/tests/test_batch_mcp_tools.py +136 -0
- codegraph_engine-3.0.1.post1/tests/test_dead_code.py +185 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_determinism_and_soak.py +2 -2
- codegraph_engine-3.0.1.post1/tests/test_federation.py +84 -0
- codegraph_engine-3.0.1.post1/tests/test_go_rust_languages.py +295 -0
- codegraph_engine-3.0.1.post1/tests/test_jvm_cpp_languages.py +233 -0
- codegraph_engine-3.0.1.post1/tests/test_lsp.py +137 -0
- codegraph_engine-3.0.1.post1/tests/test_lsp_bridge.py +42 -0
- codegraph_engine-3.0.1.post1/tests/test_master_engine.py +297 -0
- codegraph_engine-3.0.1.post1/tests/test_multi_agent.py +49 -0
- codegraph_engine-3.0.1.post1/tests/test_otel_receiver.py +163 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_phase13_agent_brain_and_rc.py +1 -1
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_pillar1_fullstack_bridge.py +6 -6
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_pillar2_change_impact.py +7 -7
- codegraph_engine-3.0.1.post1/tests/test_pr_review.py +97 -0
- codegraph_engine-3.0.1.post1/tests/test_repair.py +55 -0
- codegraph_engine-3.0.1.post1/tests/test_roblox_luau_intelligence.py +562 -0
- codegraph_engine-3.0.1.post1/tests/test_semantic_patcher.py +327 -0
- codegraph_engine-3.0.1.post1/tests/test_swe_bench_harness.py +78 -0
- codegraph_engine-3.0.1.post1/tests/test_taint_security.py +114 -0
- codegraph_engine-3.0.1.post1/tests/test_test_gen.py +85 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v216_installer.py +6 -2
- codegraph_engine-3.0.1.post1/tests/test_v300_realworld_fixes.py +116 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_windows_and_process_lifecycle.py +8 -1
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/LICENSE +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/setup.cfg +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/agent.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/api_drift.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/architecture.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/celery.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/kafka.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/rabbitmq.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/redis.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/detectors/sqs.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/otel_models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/otel_parser.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/reconciler.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/scanner.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/async_queue/traversal.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/audit.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/binding_resolver.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/branch_comparison.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/cache.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/change_impact.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/cli_output.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/config.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/constraints.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/context_freshness.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/database/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/database/extractor.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/database/interrogation.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/database/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/database/schema_drift.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/errors.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/evidence/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/evidence/citations.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/frameworks_nestjs.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/frameworks_nextjs.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/frameworks_react.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/freshness.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/frontend_html.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/git.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/git_state.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/graph/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/graph/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/pool.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/telemetry.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/templates.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/indexing/test_framework.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/installer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/llm/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/llm/base.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/llm/context.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/mcp/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/mcp_diagnostics.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/memory/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/memory/store.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/monorepo.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/observability.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/optimizer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/planner.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/py.typed +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/query_expansion.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/ranking.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/refactor/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/cache.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/coalescer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/debouncer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/governor.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/monitor.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/resources/policy.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/route_topology.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/collector.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/ingestor.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/models.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/port_inspector.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/reconciliation.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/runner.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/runtime/trace_linker.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/search/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/search/hybrid.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/search/semantic.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/security/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/security/paths.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/security/redaction.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/semantic_conflicts.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/semantic_decorators.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/structural_diff.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/styles.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/symbol_history.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/target_resolver.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/task.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/tool_selection_eval.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/tsconfig.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph/ui/__init__.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph_engine.egg-info/dependency_links.txt +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph_engine.egg-info/entry_points.txt +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph_engine.egg-info/requires.txt +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/src/codegraph_engine.egg-info/top_level.txt +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_active_coding_protection.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_adaptive_planning.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_agent_ux_hardening.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_agent_ux_text_search_file_inspection.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_artifact_classification.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_artifact_retrieval_policy.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_async_otel_reconciliation.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_async_queue.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_benchmark_infra.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_bounded_caches.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_change_impact.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_cli_db_commands.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_cli_doctor_privacy.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_concurrency_and_performance_remediation.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_conservative_binding.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_context_budget.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_context_cache.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_context_compiler_v2.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_core.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_css_styles_intelligence.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_database_integrity.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_database_runtime_intelligence_and_security.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_debouncer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_dependency_injection.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_developer_audit.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_epistemic_relationships.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_evaluation_framework.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_express_middleware_routes.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_file_budget_and_priority.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_framework_analyzers.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_framework_routes_persistence.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_frontend_html.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_git_intelligence.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_hardening.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_html_templates_and_orm_extraction.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_interrogation_contracts.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_latency_modes_and_parallel.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_live_localhost_and_db_runtime.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_mcp_integration.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_mongoose_mongodb.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_monorepo_packages.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_nestjs_framework.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_nextjs_server_actions.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_package_boundaries.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_phase10_context_optimization.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_phase11_agent_integration.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_phase12_hardening.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_phase2.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_pillar3_incremental_watcher.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_platform_resources.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_prisma_drizzle_orms.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_python_aiml_stack.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_python_fullstack_htmx_celery_django.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_ranking_engine.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_react_component_graph.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_reference_resolution.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_registries_and_dispatch.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_request_coalescer.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_resource_governor.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_retrieval_planner.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_route_composition.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_route_schema_validation_drift.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_route_to_db_mutation_lineage.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_runtime_sql_interceptor_and_drift.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_safe_rename.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_scanner_security.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_semantic_decorators.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_single_pass_parser.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_symbol_identity.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_task_ambiguity.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_task_mcp_tools.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_task_normalization.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_task_spec.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_test_intelligence.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_tsconfig_path_aliases.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v211_factory_resolution.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v211_features.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v211_imports_dependents_cli.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v211_recursive_frameworks.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v215_external_feedback.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v217_large_repo_indexing.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v21_diagnostics.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v21_hard_exclusions.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v21_query_expansion.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v21_retrieval_policy.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v21_target_resolver.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_v22_enterprise_concurrency_and_runtime.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_verify_evidence.py +0 -0
- {codegraph_engine-3.0.0 → codegraph_engine-3.0.1.post1}/tests/test_watcher_monorepo_and_api_drift.py +0 -0
{codegraph_engine-3.0.0/src/codegraph_engine.egg-info → codegraph_engine-3.0.1.post1}/PKG-INFO
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codegraph-engine
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.1.post1
|
|
4
4
|
Summary: Deep deterministic repository intelligence for AI coding agents (code, dependencies, databases, and runtime observations)
|
|
5
5
|
Author: CodeGraph contributors
|
|
6
6
|
License-Expression: MIT
|
|
7
|
-
Project-URL: Homepage, https://github.com/raghurammrsd/
|
|
8
|
-
Project-URL: Repository, https://github.com/raghurammrsd/
|
|
9
|
-
Project-URL: Documentation, https://github.com/raghurammrsd/
|
|
10
|
-
Project-URL: Changelog, https://github.com/raghurammrsd/
|
|
11
|
-
Project-URL: Issues, https://github.com/raghurammrsd/
|
|
7
|
+
Project-URL: Homepage, https://github.com/raghurammrsd/CODEGRAPH_MCP
|
|
8
|
+
Project-URL: Repository, https://github.com/raghurammrsd/CODEGRAPH_MCP
|
|
9
|
+
Project-URL: Documentation, https://github.com/raghurammrsd/CODEGRAPH_MCP/blob/main/docs/agent-brain.md
|
|
10
|
+
Project-URL: Changelog, https://github.com/raghurammrsd/CODEGRAPH_MCP/blob/main/CHANGELOG.md
|
|
11
|
+
Project-URL: Issues, https://github.com/raghurammrsd/CODEGRAPH_MCP/issues
|
|
12
12
|
Classifier: Programming Language :: Python :: 3
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.13
|
|
@@ -38,36 +38,37 @@ Dynamic: license-file
|
|
|
38
38
|
<h1 align="center">CodeGraph MCP: Full-Stack Knowledge Graph & Semantic Intelligence for AI Coding Agents</h1>
|
|
39
39
|
|
|
40
40
|
<p align="center">
|
|
41
|
-
<strong>
|
|
42
|
-
<em>
|
|
41
|
+
<strong>Deterministic AST-Verified Codebase Intelligence • Sub-15ms Live Watcher • Context Window Optimization</strong><br>
|
|
42
|
+
<em>Deterministic Model Context Protocol (MCP) server for Cursor, Claude Code, GitHub Copilot, Antigravity, Cline, Windsurf & Codex.</em>
|
|
43
43
|
</p>
|
|
44
44
|
|
|
45
45
|
<p align="center">
|
|
46
|
-
<a href="https://github.com/
|
|
46
|
+
<a href="https://github.com/raghurammrsd/CODEGRAPH_MCP"><img src="https://img.shields.io/github/stars/raghurammrsd/CODEGRAPH_MCP?style=for-the-badge&logo=github&color=gold" alt="GitHub Stars" /></a>
|
|
47
47
|
<a href="https://pypi.org/project/codegraph-engine/"><img src="https://img.shields.io/badge/pypi-codegraph--engine-3776AB.svg?style=for-the-badge&logo=pypi" alt="PyPI: codegraph-engine" /></a>
|
|
48
|
-
<a href="src/codegraph/mcp/server.py"><img src="https://img.shields.io/badge/MCP-
|
|
49
|
-
<a href="tests/"><img src="https://img.shields.io/badge/pytest-
|
|
48
|
+
<a href="src/codegraph/mcp/server.py"><img src="https://img.shields.io/badge/MCP-97%20Verified%20Tools-2ea043.svg?style=for-the-badge" alt="MCP Tools: 97 verified" /></a>
|
|
49
|
+
<a href="tests/"><img src="https://img.shields.io/badge/pytest-1062%20passed%20(100%25)-brightgreen.svg?style=for-the-badge&logo=pytest" alt="Tests: 1062 passed" /></a>
|
|
50
50
|
<a href="pyproject.toml"><img src="https://img.shields.io/badge/ruff-0%20errors-success.svg?style=for-the-badge" alt="Ruff: 0 errors" /></a>
|
|
51
|
-
<a href="src/codegraph/"><img src="https://img.shields.io/badge/mypy-strict%20(
|
|
52
|
-
<a href="https://github.com/raghuram/CODE_GRAPH_MCP/stargazers"><img src="https://img.shields.io/badge/Star%20on%20GitHub-loved%20by%20agents-yellow?style=for-the-badge" alt="Star us on GitHub" /></a>
|
|
51
|
+
<a href="src/codegraph/"><img src="https://img.shields.io/badge/mypy-strict%20(134%20files)-blue.svg?style=for-the-badge" alt="Mypy: strict" /></a>
|
|
53
52
|
</p>
|
|
54
53
|
|
|
55
|
-
>
|
|
54
|
+
> CodeGraph MCP provides deterministic, evidence-backed repository intelligence through Abstract Syntax Trees, framework router hierarchies, database lineage, and runtime observation across 25 production pillars and 97 FastMCP tools.
|
|
56
55
|
|
|
57
56
|
<p align="center">
|
|
58
|
-
<a href="https://raghurammrsd.github.io/
|
|
59
|
-
<a href="https://pypi.org/project/codegraph-engine/3.0.
|
|
57
|
+
<a href="https://raghurammrsd.github.io/CODEGRAPH_MCP/"><strong>Documentation Site</strong></a> •
|
|
58
|
+
<a href="https://pypi.org/project/codegraph-engine/3.0.1/"><strong>PyPI Package (v3.0.1)</strong></a> •
|
|
60
59
|
<a href="#overview"><strong>Overview</strong></a> •
|
|
60
|
+
<a href="#the-25-production-pillars-of-codegraph-mcp"><strong>25 Pillars</strong></a> •
|
|
61
61
|
<a href="#interactive-web-dashboard--vs-code-extension"><strong>Web Dashboard & VS Code</strong></a> •
|
|
62
|
-
<a href="#
|
|
62
|
+
<a href="#multi-language-real-world-benchmark-results"><strong>Multi-Language Benchmarks</strong></a> •
|
|
63
|
+
<a href="#roblox--luau-intelligence-codegraph-roblox"><strong>Roblox & Luau</strong></a> •
|
|
63
64
|
<a href="#2-quickstart-30-second-setup"><strong>Quickstart</strong></a> •
|
|
64
65
|
<a href="#4-real-world-cli-outputs"><strong>CLI Outputs</strong></a> •
|
|
65
66
|
<a href="#6-database-intelligence"><strong>Database Intelligence</strong></a> •
|
|
66
67
|
<a href="#7-zero-friction-runtime-intelligence--static-reconciliation"><strong>Runtime Evidence</strong></a> •
|
|
67
68
|
<a href="#8-git-aware-repository-intelligence"><strong>Git Intelligence</strong></a> •
|
|
68
69
|
<a href="#measured-performance--real-metrics-benchmark"><strong>Benchmarks</strong></a> •
|
|
69
|
-
<a href="docs/agent-brain.md"><strong>
|
|
70
|
-
<a href="https://github.com/raghurammrsd/
|
|
70
|
+
<a href="docs/agent-brain.md"><strong>97-Tool Reference</strong></a> •
|
|
71
|
+
<a href="https://github.com/raghurammrsd/CODEGRAPH_MCP"><strong>GitHub</strong></a>
|
|
71
72
|
</p>
|
|
72
73
|
|
|
73
74
|
---
|
|
@@ -80,7 +81,7 @@ When AI coding agents (such as Claude Code, Cursor, or Antigravity) explore comp
|
|
|
80
81
|
|
|
81
82
|
### The Solution: CodeGraph MCP
|
|
82
83
|
|
|
83
|
-
**CodeGraph MCP provides deterministic,
|
|
84
|
+
**CodeGraph MCP provides deterministic, evidence-backed repository intelligence through the Model Context Protocol.** Instead of guessing based on lexical approximations, the AI agent queries a local, persistent SQLite index for verified AST relationships, framework router trees, database lineages, and live runtime observations. When dynamic ambiguity occurs (such as untyped method receivers in Python or JS), relationships are explicitly tagged as `POSSIBLE` or `UNKNOWN` rather than inventing false facts.
|
|
84
85
|
|
|
85
86
|
```text
|
|
86
87
|
┌─────────────────────────────────────────────────────────────┐
|
|
@@ -92,10 +93,10 @@ When AI coding agents (such as Claude Code, Cursor, or Antigravity) explore comp
|
|
|
92
93
|
┌─────────────────────────────────────────────────────────────┐
|
|
93
94
|
│ CODEGRAPH MCP ENGINE │
|
|
94
95
|
├──────────────────────────────┬──────────────────────────────┤
|
|
95
|
-
│ AST Code Relationships │ Framework
|
|
96
|
-
│ (Callers, Callees, DI) │ (FastAPI, Django,
|
|
96
|
+
│ AST Code Relationships │ Framework & Network Graph │
|
|
97
|
+
│ (Callers, Callees, DI) │ (FastAPI, Django, Roblox) │
|
|
97
98
|
├──────────────────────────────┼──────────────────────────────┤
|
|
98
|
-
│ Database
|
|
99
|
+
│ Database & DataStore Graph │ Non-Invasive Dev Tracing │
|
|
99
100
|
│ (SQLAlchemy, Prisma, ORM) │ (HTTP metrics, exceptions) │
|
|
100
101
|
└──────────────────────────────┴──────────────────────────────┘
|
|
101
102
|
│
|
|
@@ -105,13 +106,13 @@ When AI coding agents (such as Claude Code, Cursor, or Antigravity) explore comp
|
|
|
105
106
|
|
|
106
107
|
### Core Architecture Capabilities
|
|
107
108
|
|
|
108
|
-
- **Deterministic Evidence Guarantee**: Every returned entity and relationship is statically verified via Abstract Syntax Trees or explicitly flagged as `UNKNOWN` / `POSSIBLE`. CodeGraph MCP provides deterministic, evidence-backed repository intelligence across application code, databases, runtime behavior, and Git history.
|
|
109
|
+
- **Deterministic Evidence Guarantee**: Every returned entity and relationship is statically verified via Abstract Syntax Trees (`AST_VERIFIED`, `FRAMEWORK_VERIFIED`, `ROJO_VERIFIED`) or explicitly flagged as `UNKNOWN` / `POSSIBLE`. CodeGraph MCP provides deterministic, evidence-backed repository intelligence across application code, databases, runtime behavior, and Git history.
|
|
109
110
|
- **Sub-5ms Freshness Verification**: Monotonic commit tracking validates `git rev-parse HEAD` and porcelain status instantly, avoiding full-tree re-indexing on unchanged codebases.
|
|
110
111
|
- **Context Window Optimization**: Yields 65% to 85% token reduction by returning structured, bounded source slices rather than entire file dumps.
|
|
111
112
|
- **Zero-Friction Dev Interception (`codegraph run`)**: Wraps local development servers (e.g., `codegraph run npm run dev`, `codegraph run uvicorn main:app`) to capture real HTTP routes, latencies, and stack traces without application code changes.
|
|
112
113
|
- **Multi-Agent Setup (`codegraph install`)**: Automatically detects, configures, and verifies integrations for Claude Code, Cursor, Antigravity, and Cline.
|
|
113
114
|
|
|
114
|
-
> **Supported Languages & Frameworks:** Python (`FastAPI`, `Flask`, `Django`, `SQLAlchemy`, `PyTorch
|
|
115
|
+
> **Supported Languages & Frameworks:** Python (`FastAPI`, `Flask`, `Django`, `SQLAlchemy`, `PyTorch`), TypeScript / JavaScript (`React`, `Next.js`, `Express`, `NestJS`, `Prisma`), Roblox / Luau (`Rojo`, `Knit`, `DataStoreService`), Go (`Gin`, `Echo`, `net/http`), Rust (`Axum`, `Actix`, `Tokio`), Java (`Spring Boot`, `JPA`), and C/C++.
|
|
115
116
|
|
|
116
117
|
<p align="center">
|
|
117
118
|
<img src="docs/assets/codegraph_full_architecture.svg" alt="CodeGraph MCP Comprehensive Full-Stack Architecture Pipeline" width="950" />
|
|
@@ -123,25 +124,30 @@ When AI coding agents (such as Claude Code, Cursor, or Antigravity) explore comp
|
|
|
123
124
|
|
|
124
125
|
## Measured Performance & Real Metrics Benchmark
|
|
125
126
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
| Performance Metric | Unassisted AI Agents (Raw Grep / File Dumps) | CodeGraph MCP Engine |
|
|
129
|
-
| :--- | :---: | :---: | :---: |
|
|
130
|
-
| **
|
|
131
|
-
| **
|
|
132
|
-
| **
|
|
133
|
-
| **
|
|
134
|
-
| **
|
|
135
|
-
| **
|
|
136
|
-
| **
|
|
137
|
-
| **
|
|
127
|
+
Performance and retrieval accuracy are verified across two empirical evaluation suites: a **32-task agent navigation simulation** ([`src/codegraph/tool_selection_eval.py`](src/codegraph/tool_selection_eval.py)) measuring agent trajectory efficiency, and a **50-task diagnostic benchmark** ([`benchmarks/run_v21_eval.py`](benchmarks/run_v21_eval.py)) evaluating multi-file recall, coverage, and context boundaries:
|
|
128
|
+
|
|
129
|
+
| Performance Metric | Unassisted AI Agents (Raw Grep / File Dumps) | CodeGraph MCP Engine | Measured Result | Evaluation Suite |
|
|
130
|
+
| :--- | :---: | :---: | :---: | :---: |
|
|
131
|
+
| **Unsupported Relationship Claims** | 18.5% – 34.0% false edges | **0.0%** (AST / Framework verified) | **100% eliminated** | 32-Task Navigation Eval |
|
|
132
|
+
| **Exploration Tool Calls** | 164 total tool calls (~5.1 / task) | **71 tool calls** (~2.2 / task) | **56.7% fewer tool calls** | 32-Task Navigation Eval |
|
|
133
|
+
| **Context Consumption (Prompt Tokens)** | 3,000 – 12,000+ tokens / task | **~510 tokens** avg payload | **72% – 85% token savings** | 32-Task Navigation Eval |
|
|
134
|
+
| **Direct File Token Reduction** | Full file reads required | Bounded slices via `get_file` | **41.8% token reduction** | 50-Task Retrieval Benchmark |
|
|
135
|
+
| **Multi-File Context Reduction** | 3,000 – 12,000+ tokens / task | **~510 tokens** avg payload | **72% – 85% token reduction** | 32-Task Navigation Eval |
|
|
136
|
+
| **Task Coverage & Symbol Recall** | Baseline lexical match | **89.0% coverage / 72.5% recall** | **Verified ground truth** | 50-Task Retrieval Benchmark |
|
|
137
|
+
| **In-Memory SQLite WAL Query** | Full rescan required (1.2s – 6.5s) | **< 15ms per query** | **Permanent WAL concurrency** | Persistent MCP Server Daemon |
|
|
138
|
+
| **Binary CSR Pathfinding** | Linear graph scan | **< 1ms traversal** | **Microsecond CSR search** | `fast_graph_path` Traversal |
|
|
139
|
+
| **CLI Cold Invocation Latency** | — | **~265ms total turnaround** | **Includes Python startup** | One-off CLI Subcommands |
|
|
140
|
+
| **Single-File Full Re-index (Cold CLI)** | Full rescan required (4.4s) | **3.665s** (2,504 files) | **16.9% faster** | 4-Tier Stress Benchmark |
|
|
141
|
+
| **Repository Freshness Check** | 450ms – 2,100ms disk stat checks | **< 5ms (Git commit fast path)** | **99% faster checks** | Git Fast Path Check |
|
|
142
|
+
| **Symbol Grounding & Resolution** | Manual file scanning | **< 2ms in-memory SQLite** | **Sub-millisecond resolution** | SQLite Indexed Lookup |
|
|
143
|
+
| **Automated Test Suite Quality** | — | **1,062 passed tests (100% pass rate)** | **Zero regressions** | Pytest CI/CD Suite |
|
|
138
144
|
|
|
139
145
|
<p align="center">
|
|
140
146
|
<img src="docs/assets/performance_comparison.svg" alt="CodeGraph MCP — Measured Context & Exploration Efficiency" width="850" />
|
|
141
147
|
</p>
|
|
142
148
|
|
|
143
149
|
<p align="center">
|
|
144
|
-
<img src="docs/assets/large_repo_scaling.svg" alt="CodeGraph MCP — Large Repository Scaling
|
|
150
|
+
<img src="docs/assets/large_repo_scaling.svg" alt="CodeGraph MCP — Large Repository Scaling up to 2,504 Files / ~120k LOC" width="850" />
|
|
145
151
|
</p>
|
|
146
152
|
|
|
147
153
|
---
|
|
@@ -176,7 +182,7 @@ The CodeGraph VS Code extension brings deterministic repository intelligence dir
|
|
|
176
182
|
```bash
|
|
177
183
|
# Package and install the extension
|
|
178
184
|
cd vscode-extension
|
|
179
|
-
code --install-extension codegraph-3.0.
|
|
185
|
+
code --install-extension codegraph-3.0.1.vsix
|
|
180
186
|
```
|
|
181
187
|
|
|
182
188
|
Features included in the VS Code sidebar:
|
|
@@ -198,6 +204,14 @@ CodeGraph MCP natively parses AI/ML architectures and agent pipelines into deter
|
|
|
198
204
|
- **LangChain LCEL Pipelines**: Tracks pipe syntax (`prompt | model | parser`) as executable pipeline dataflow (`CHAINS_TO`).
|
|
199
205
|
- **Distributed Ray Tasks**: Detects `@ray.remote` actor decorators and `task.remote()` invocations (`DISPATCHES_RAY_TASK`).
|
|
200
206
|
|
|
207
|
+
### Roblox & Luau Intelligence (`codegraph roblox`)
|
|
208
|
+
First-class repository intelligence for Roblox game architectures (`.lua`, `.luau`, and `roblox-ts`):
|
|
209
|
+
- **Native Luau Parser**: Extracts local/global functions, colon methods (`function Service:Init()`), dot methods (`function Module.Func()`), table-assigned methods (`Service.Method = function(...)`), module table returns, `return table.freeze(Module)`, and Luau `type` / `export type` declarations.
|
|
210
|
+
- **Rojo DataModel Mapping (`default.project.json`)**: Maps virtual Roblox paths (`ReplicatedStorage`, `ServerScriptService`, `StarterPlayerScripts`, `Packages`, `script.Parent`) to physical files on disk with `ROJO_VERIFIED` provenance (`REQUIRES_MODULE`).
|
|
211
|
+
- **Client $\leftrightarrow$ Server Network Graph**: Traces `RemoteEvent:FireServer(...)` $\to$ `OnServerEvent:Connect(handler)` and `RemoteFunction:InvokeServer(...)` $\to$ `OnServerInvoke = handler` through canonical Remote nodes via `CLIENT_DISPATCHES_REMOTE` and `SERVER_HANDLES_REMOTE`.
|
|
212
|
+
- **Knit, Flamework & Persistence**: Tracks `Knit.CreateService` / `Knit.GetService`, Flamework `@Service` / `@Controller` / `Dependency<T>`, and `DataStoreService:GetDataStore` (`GetAsync`, `SetAsync`, `UpdateAsync`) + `ProfileService` (`CONFIGURES_PERSISTENCE`, `READS_PERSISTENCE`, `WRITES_PERSISTENCE`).
|
|
213
|
+
- **Dedicated CLI Inspection**: `codegraph roblox remotes`, `codegraph roblox modules`, and `codegraph roblox routes`.
|
|
214
|
+
|
|
201
215
|
### Pillar 1: The Unified Full-Stack Bridge (`codegraph api-drift`)
|
|
202
216
|
Bridges frontend client fetchers and backend API handlers across languages without manual tracing:
|
|
203
217
|
- **Client Route Extraction**: Statically parses React / Next.js / Vue / Nuxt `fetch<T>()`, `axios.get<T>()`, `useSWR<T>()`, `useQuery<T>()`, and `$fetch<T>()` alongside TypeScript request/response interfaces.
|
|
@@ -218,69 +232,217 @@ Zero-heat, real-time file system monitoring with sub-15ms incremental reindexing
|
|
|
218
232
|
- **Sub-15ms Incremental Reindexing**: Bypasses full-disk traversal; only re-indexes modified files (`Indexer.reindex_paths`) and advances generation counters.
|
|
219
233
|
- **Instant In-Memory Cache Busting**: Automatically purges LRU memory caches (`_PARSE_CACHE`, `_GRAPH_CACHE`) and SQLite context caches upon file mutation.
|
|
220
234
|
|
|
221
|
-
## 1. What's New in v3.0.
|
|
235
|
+
## 1. What's New in v3.0.1: 25 Production Pillars & 97 Verified FastMCP Tools
|
|
222
236
|
|
|
223
|
-
|
|
237
|
+
CodeGraph **v3.0.1** is the production-grade codebase intelligence engine for AI coding agents, providing deterministic, source-verified AST facts, microsecond Compressed Sparse Row (CSR) graph pathfinding, and sub-15ms live file synchronization across 7 major programming languages.
|
|
224
238
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
239
|
+
<p align="center">
|
|
240
|
+
<img src="docs/assets/codegraph_full_architecture.svg" alt="CodeGraph v3.0.1 Architecture Pipeline" width="100%" />
|
|
241
|
+
</p>
|
|
242
|
+
|
|
243
|
+
### Key Feature Highlights
|
|
244
|
+
|
|
245
|
+
- **Microsecond CSR Traversal**: Traverses call chains and impact graphs across 100k+ edges in microseconds via binary Compressed Sparse Row matrices (`graph_csr.py`).
|
|
246
|
+
- **97 Verified FastMCP Tools**: 100% audit pass rate across all registered FastMCP tools for Claude Code, Cursor, Antigravity, and Cline.
|
|
247
|
+
- **65% to 85% Token Reduction**: Returns compact, bounded AST context packets (~510 tokens) rather than dumping entire multi-thousand-line files.
|
|
248
|
+
- **7 Languages Native Support**: Python, TypeScript/JavaScript, Roblox/Luau, Go, Rust, Java, and C/C++.
|
|
249
|
+
- **Zero Hallucinated Edges**: Every caller, route, and database relationship is compiler-verified (`AST_VERIFIED` / `FRAMEWORK_VERIFIED`).
|
|
250
|
+
- **Universal Cross-Platform**: Native Windows `kernel32` process inspection, cp1252/UTF-8 terminal safety, and `python -m codegraph` execution out of the box.
|
|
251
|
+
- **Sub-15ms Live Watcher**: Instant OS kernel push synchronization (macOS FSEvents, Linux inotify, Windows ReadDirectoryChangesW).
|
|
252
|
+
- **Roblox & Luau Intelligence**: Client-server remote hopping, Rojo file tree mapping, and DataStore persistence lineage.
|
|
233
253
|
|
|
234
254
|
---
|
|
235
255
|
|
|
236
|
-
|
|
256
|
+
### The 25 Production Pillars of CodeGraph MCP
|
|
257
|
+
|
|
258
|
+
| Category | Pillar | Primary Tools | What It Does |
|
|
259
|
+
|---|---|---|---|
|
|
260
|
+
| **Code Intelligence** | **1. Multi-Language AST** | `resolve_symbol`, `batch_get_symbols` | Native AST extraction for 7 languages in <60ms. |
|
|
261
|
+
| | **2. CSR Binary Graph** | `fast_graph_path`, `get_call_graph` | Microsecond pathfinding across binary CSR matrices. |
|
|
262
|
+
| | **3. 97 FastMCP Tools** | 97 registered FastMCP endpoints | 100% verified tool suite spanning all capabilities. |
|
|
263
|
+
| | **4. HTTP & RPC Routes** | `find_routes`, `list_routes` | FastAPI, Express, Spring Boot, Gin, Axum, Roblox Remotes. |
|
|
264
|
+
| | **5. API Contract Drift** | `check_api_drift` | Statically matches frontend `fetch()` to backend routes. |
|
|
265
|
+
| | **6. Dependency Injection** | `get_context`, `resolve_symbol` | Traces FastAPI `Depends`, Spring `@Autowired`, Gin middleware. |
|
|
266
|
+
| | **7. Database Lineage** | `find_db_tables`, `get_db_impact` | Mapped SQLAlchemy, Prisma, JPA, SQLx, DataStore writers. |
|
|
267
|
+
| **Safety & Testing** | **8. PR Blast Radius** | `analyze_change_impact`, `get_change_impact` | Downstream caller trees, impacted routes, and tests. |
|
|
268
|
+
| | **9. Live Watcher** | `codegraph watch` | Kernel push events debounced in <15ms. |
|
|
269
|
+
| | **10. Safe Refactoring** | `safe_rename`, `apply_semantic_patch` | Multi-file transactional patches with rollback safety. |
|
|
270
|
+
| | **11. Multi-Agent Leases** | `claim_file_lease`, `release_file_lease` | Concurrency locks preventing swarm file collisions. |
|
|
271
|
+
| | **12. Dead Code Detection** | `find_unreachable_code`, `find_dead_code` | Graph reachability traversal finding unused symbols. |
|
|
272
|
+
| | **13. Taint Security** | `analyze_dataflow_taint` | Interprocedural dataflow tracking for injection flaws. |
|
|
273
|
+
| | **14. Supply Chain CVE** | `analyze_supply_chain_cve_impact` | Maps package lockfile CVEs to internal code consumers. |
|
|
274
|
+
| | **15. Repo Federation** | `federate_repositories` | Cross-repository HTTP and RPC service resolution. |
|
|
275
|
+
| | **16. Test Scaffolding** | `generate_test_scaffolding` | Auto-generates unit test suites with mocked DB fixtures. |
|
|
276
|
+
| | **17. LSP Bridge** | `codegraph lsp` | stdio LSP server with definition and caller CodeLens. |
|
|
277
|
+
| **Operations & Storage** | **18. Agent Memory** | `store_agent_memory`, `query_agent_memory` | SQLite FTS5 experience store with sub-5ms BM25 search. |
|
|
278
|
+
| | **19. Git Diff Freshness** | `get_git_state`, `compare_git` | Monotonic Git commit diffs & context invalidation. |
|
|
279
|
+
| | **20. Index Self-Healing** | `repair_repository_index` | Automatic integrity checks and WAL rebuilds. |
|
|
280
|
+
| | **21. SWE-bench Sandbox** | `evaluate_speculative_patch` | Isolated test execution harness for agent patches. |
|
|
281
|
+
| | **22. PR Review Bot** | `generate_pr_review` | High-density PR review comments with risk badges. |
|
|
282
|
+
| | **23. Web UI Dashboard** | `codegraph ui` | Browser visualizer on `127.0.0.1:8765`. |
|
|
283
|
+
| | **24. Windows Portability** | `codegraph` CLI | Native Windows encoding, Win32 kernel32, and `python -m codegraph`. |
|
|
284
|
+
| | **25. Universal Installer** | `codegraph install` | Auto-onboarding for Claude, Cursor, Antigravity, Cline. |
|
|
237
285
|
|
|
238
|
-
|
|
286
|
+
---
|
|
239
287
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
|
245
|
-
|
|
|
246
|
-
| **
|
|
288
|
+
### Multi-Language Framework Benchmarks
|
|
289
|
+
|
|
290
|
+
Evaluated against multi-layer framework fixtures (Gin HTTP, Axum + sqlx, Spring Boot + JPA, Express + React TSX, Rojo + DataStore) using CodeGraph v3.0.1 (97 FastMCP tools, SQLite WAL storage):
|
|
291
|
+
|
|
292
|
+
| Language | Ecosystem / Framework | Indexing Time (Core AST) | SQLite DB Size | Files | Symbols | Edges | Avg Query Latency | Production Score |
|
|
293
|
+
| :--- | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
|
|
294
|
+
| **Roblox / Luau** | Rojo / Knit / DataStore | **63 ms** (352 ms total) | 588 KB | 5 | 23 | 34 | 278 ms | **9.0 / 10** |
|
|
295
|
+
| **Go** | Gin / GORM / net/http | **58 ms** (408 ms total) | 540 KB | 5 | 25 | 92 | 265 ms | **8.5 / 10** |
|
|
296
|
+
| **TypeScript** | Express + React (TSX) | **81 ms** (378 ms total) | 560 KB | 5 | 16 | 101 | 268 ms | **8.5 / 10** |
|
|
297
|
+
| **Java** | Spring Boot + JPA | **59 ms** (417 ms total) | 548 KB | 4 | 22 | 64 | 270 ms | **8.5 / 10** |
|
|
298
|
+
| **Rust** | Axum + Tokio + sqlx | **48 ms** (312 ms total) | 484 KB | 5 | 14 | 29 | 264 ms | **8.5 / 10** |
|
|
299
|
+
|
|
300
|
+
*Note on Latency:* Total CLI turnaround averages ~265 ms due to Python interpreter cold startup. The underlying SQLite WAL engine executes graph queries in **sub-15 ms**.
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
### Token Reduction & Context Window Optimization
|
|
305
|
+
|
|
306
|
+
```text
|
|
307
|
+
Without CodeGraph (Raw Grep / Full File Dumps):
|
|
308
|
+
┌────────────────────────────────────────────────────────────────────────┐
|
|
309
|
+
│ Entire Files Read (12,000+ Tokens) │
|
|
310
|
+
│ [====================================================================] │
|
|
311
|
+
└────────────────────────────────────────────────────────────────────────┘
|
|
312
|
+
|
|
313
|
+
With CodeGraph MCP (Targeted AST Slices & Evidence):
|
|
314
|
+
┌───────────────────────────┐
|
|
315
|
+
│ ~510 Tokens (72%–85% Saved│
|
|
316
|
+
│ [======] │
|
|
317
|
+
└───────────────────────────┘
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
- **65% to 85% Token Reduction**: Instead of transmitting 3,000 to 12,000 raw lines to the LLM, CodeGraph returns bounded, AST-verified context packets (~510 tokens average).
|
|
321
|
+
- **56.7% Fewer Tool Calls**: Agents resolve multi-file call paths in an average of 2.2 tool calls versus 5.1 calls for naive unassisted agents.
|
|
322
|
+
- **100% Elimination of Hallucinated Callers**: Grounded directly in AST coordinates, eliminating false edges entirely.
|
|
247
323
|
|
|
248
324
|
---
|
|
249
325
|
|
|
250
|
-
## 2. Quickstart
|
|
326
|
+
## 2. Quickstart & Agent Installation
|
|
251
327
|
|
|
252
|
-
### Step 1: Install
|
|
328
|
+
### Step 1: Install `codegraph-engine`
|
|
253
329
|
|
|
254
330
|
```bash
|
|
331
|
+
# macOS / Linux
|
|
255
332
|
pip install "codegraph-engine[mcp]"
|
|
333
|
+
|
|
334
|
+
# Windows (PowerShell or Command Prompt)
|
|
335
|
+
python -m pip install "codegraph-engine[mcp]"
|
|
336
|
+
|
|
337
|
+
# Universal execution verification (works on all platforms even if Scripts/ is not on PATH)
|
|
338
|
+
python -m codegraph --version
|
|
256
339
|
```
|
|
257
340
|
|
|
258
|
-
|
|
341
|
+
> **Windows Portability:** CodeGraph v3.0.1 includes native Windows cp1252/UTF-8 terminal encoding safety, zero-dependency Win32 `kernel32` process inspection, and direct module-level execution via `python -m codegraph`. If the Windows `Scripts\` directory is not in your system `PATH`, executing `python -m codegraph <command>` works out of the box across PowerShell, CMD, and Windows Terminal.
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
### Step 2: Connect Your AI Coding Agents (`codegraph install --target`)
|
|
259
346
|
|
|
260
|
-
CodeGraph MCP includes an
|
|
347
|
+
CodeGraph MCP includes an automated, idempotent onboarding installer ([`src/codegraph/installer.py`](src/codegraph/installer.py)) that detects installed agents, configures `mcpServers.codegraph`, installs marker-bounded routing instructions (`<!-- CODEGRAPH:START -->` … `<!-- CODEGRAPH:END -->`), and verifies server health.
|
|
348
|
+
|
|
349
|
+
#### Primary Target Commands (`--target`)
|
|
350
|
+
|
|
351
|
+
Run `codegraph install` targeting your specific AI coding agent(s):
|
|
261
352
|
|
|
262
353
|
```bash
|
|
263
|
-
#
|
|
264
|
-
codegraph install
|
|
354
|
+
# Target Claude Code (configures .mcp.json and CLAUDE.md)
|
|
355
|
+
codegraph install --target claude --yes
|
|
356
|
+
|
|
357
|
+
# Target Cursor (configures .cursor/mcp.json, .cursorrules, and .cursor/rules/codegraph.md)
|
|
358
|
+
codegraph install --target cursor --yes
|
|
359
|
+
|
|
360
|
+
# Target Google Antigravity / Gemini (configures .agents/mcp_config.json, AGENTS.md, and skills)
|
|
361
|
+
codegraph install --target antigravity --yes
|
|
362
|
+
|
|
363
|
+
# Target Cline / Roo Code (configures .cline/mcp_settings.json and .clinerules)
|
|
364
|
+
codegraph install --target cline --yes
|
|
265
365
|
|
|
266
|
-
#
|
|
267
|
-
codegraph install --
|
|
366
|
+
# Target Codex CLI (configures .codex/mcp_config.json and AGENTS.md)
|
|
367
|
+
codegraph install --target codex --yes
|
|
268
368
|
|
|
269
|
-
#
|
|
270
|
-
codegraph install --
|
|
369
|
+
# Target Gemini CLI (configures .gemini/settings.json and GEMINI.md)
|
|
370
|
+
codegraph install --target gemini --yes
|
|
371
|
+
|
|
372
|
+
# Target multiple agents simultaneously
|
|
373
|
+
codegraph install --target claude,cursor,antigravity --yes
|
|
374
|
+
|
|
375
|
+
# Auto-detect all installed agents in the project / environment
|
|
376
|
+
codegraph install --target auto --yes
|
|
377
|
+
|
|
378
|
+
# Configure ALL supported agents at once
|
|
379
|
+
codegraph install --target all --yes
|
|
271
380
|
```
|
|
272
381
|
|
|
382
|
+
#### Installation Scopes (`--location`)
|
|
383
|
+
|
|
384
|
+
```bash
|
|
385
|
+
# Local Project Scope (Default): Configures the current repository directory
|
|
386
|
+
codegraph install --target claude --location local --yes
|
|
387
|
+
|
|
388
|
+
# Global Scope: Configures your user home directory (~/.claude.json, ~/.cursor/mcp.json, etc.)
|
|
389
|
+
codegraph install --target cursor --location global --yes
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
#### Safe Previews, Manual Config & Repairs
|
|
393
|
+
|
|
394
|
+
```bash
|
|
395
|
+
# Dry-Run Preview: View planned file changes without modifying anything on disk
|
|
396
|
+
codegraph install --target all --dry-run
|
|
397
|
+
|
|
398
|
+
# Print Config Only: Output exact JSON snippet for manual pasting into GUI settings
|
|
399
|
+
codegraph install --print-config claude
|
|
400
|
+
codegraph install --print-config cursor
|
|
401
|
+
codegraph install --print-config antigravity
|
|
402
|
+
|
|
403
|
+
# Automatic Config Repair: Backs up and repairs corrupted or outdated MCP settings
|
|
404
|
+
codegraph install --target auto --repair --yes
|
|
405
|
+
|
|
406
|
+
# Clean Uninstall: Safely removes CodeGraph integration while preserving user files
|
|
407
|
+
codegraph uninstall --target claude,cursor --yes
|
|
408
|
+
|
|
409
|
+
# Uninitialize: Removes only the local repository index (.codegraph.sqlite3)
|
|
410
|
+
codegraph uninit --yes
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
#### What `codegraph install` Configures Per Agent:
|
|
414
|
+
|
|
415
|
+
| Target Agent (`--target`) | MCP Configuration File | Marker-Bounded Instructions | Skills & Rules |
|
|
416
|
+
| :--- | :--- | :--- | :--- |
|
|
417
|
+
| **`claude`** (Claude Code) | `.mcp.json` (local) / `~/.claude.json` (global) | `CLAUDE.md` | Marker section |
|
|
418
|
+
| **`cursor`** (Cursor) | `.cursor/mcp.json` | `.cursorrules` | `.cursor/rules/codegraph.md` |
|
|
419
|
+
| **`antigravity`** (Antigravity) | `.agents/mcp_config.json` | `AGENTS.md` | `.agents/rules/` & `.agents/skills/` |
|
|
420
|
+
| **`cline`** (Cline / Roo Code) | `.cline/mcp_settings.json` | `.clinerules` | `.cline/rules/codegraph.md` |
|
|
421
|
+
| **`codex`** (Codex CLI) | `.codex/mcp_config.json` | `AGENTS.md` | Marker section |
|
|
422
|
+
| **`gemini`** (Gemini CLI) | `.gemini/settings.json` | `GEMINI.md` | Marker section |
|
|
423
|
+
|
|
424
|
+
---
|
|
425
|
+
|
|
273
426
|
### Step 3: Initialize & Verify Your Project Index
|
|
274
427
|
|
|
275
428
|
```bash
|
|
276
429
|
cd your-project
|
|
430
|
+
|
|
431
|
+
# Initialize SQLite graph index (.codegraph.sqlite3 in WAL mode)
|
|
277
432
|
codegraph init
|
|
433
|
+
|
|
434
|
+
# Check index freshness (<5ms via Git commit fast path)
|
|
278
435
|
codegraph status
|
|
279
|
-
|
|
436
|
+
|
|
437
|
+
# Verify database integrity and running MCP server processes
|
|
438
|
+
codegraph doctor --database
|
|
439
|
+
codegraph doctor --processes
|
|
280
440
|
```
|
|
281
441
|
|
|
282
442
|
> **Dynamic Index Hot-Reloading:** If your AI coding agent launches `codegraph mcp serve` before you run `codegraph init`, you do **not** need to restart your IDE or MCP session. As soon as `codegraph init` or `codegraph index` creates or updates `.codegraph.sqlite3`, the running MCP server automatically detects the database on the next tool call and refreshes its in-memory graph cache (`get_repository_status(reload=True, reindex=True)` can also be invoked directly by the agent).
|
|
283
443
|
|
|
444
|
+
---
|
|
445
|
+
|
|
284
446
|
### Step 4: Run With Zero-Friction Telemetry (`codegraph run`)
|
|
285
447
|
|
|
286
448
|
Wrap your development server transparently to stream real HTTP routes, durations, and uncaught exceptions directly into CodeGraph MCP:
|
|
@@ -298,6 +460,18 @@ codegraph run python manage.py runserver
|
|
|
298
460
|
|
|
299
461
|
---
|
|
300
462
|
|
|
463
|
+
### Step 5: Launch the Interactive Web Visualizer (`codegraph ui`)
|
|
464
|
+
|
|
465
|
+
```bash
|
|
466
|
+
# Launch interactive dashboard on http://127.0.0.1:8765
|
|
467
|
+
codegraph ui
|
|
468
|
+
|
|
469
|
+
# Custom port or headless server (no automatic browser launch)
|
|
470
|
+
codegraph ui --port 9000 --no-browser
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
---
|
|
474
|
+
|
|
301
475
|
## 3. Core Architecture & Mental Model
|
|
302
476
|
|
|
303
477
|
```mermaid
|
|
@@ -337,7 +511,7 @@ EDITING → Native agent / IDE editing tools
|
|
|
337
511
|
|
|
338
512
|
## 4. Real-World CLI Outputs
|
|
339
513
|
|
|
340
|
-
Below are exact, verifiable outputs produced by CodeGraph MCP v3.0.
|
|
514
|
+
Below are exact, verifiable outputs produced by CodeGraph MCP v3.0.1:
|
|
341
515
|
|
|
342
516
|
### 1. Zero-Friction Runtime Interceptor (`codegraph run`)
|
|
343
517
|
|
|
@@ -352,13 +526,13 @@ $ codegraph run python3 -c "print('>> Dev server active on port 8000')"
|
|
|
352
526
|
```bash
|
|
353
527
|
$ codegraph status .
|
|
354
528
|
{
|
|
355
|
-
"repository": "/
|
|
529
|
+
"repository": "/workspace/my-project",
|
|
356
530
|
"freshness": "FRESH",
|
|
357
531
|
"freshness_detail": "Index matches current repository state.",
|
|
358
532
|
"files": 190,
|
|
359
533
|
"chunks": 1965,
|
|
360
534
|
"symbols": 1947,
|
|
361
|
-
"framework_routes":
|
|
535
|
+
"framework_routes": 14,
|
|
362
536
|
"graph_edges": 12712,
|
|
363
537
|
"resource_profile": "BALANCED",
|
|
364
538
|
"pressure_level": "NORMAL",
|
|
@@ -511,7 +685,7 @@ orders.user_id ──► users.id
|
|
|
511
685
|
|
|
512
686
|
## 7. Zero-Friction Runtime Intelligence & Static Reconciliation
|
|
513
687
|
|
|
514
|
-
Static analysis proves what **can** happen structurally; runtime telemetry records what **was observed** during execution. CodeGraph MCP v3.0.
|
|
688
|
+
Static analysis proves what **can** happen structurally; runtime telemetry records what **was observed** during execution. CodeGraph MCP v3.0.1 brings them together transparently:
|
|
515
689
|
|
|
516
690
|
```text
|
|
517
691
|
STATIC GRAPH (AST + Framework + Dataflow + DB)
|
|
@@ -561,7 +735,7 @@ UNRESOLVED_REFERENCE / POSSIBLE_CALLS (status = "UNKNOWN" | "POSSIBLE")
|
|
|
561
735
|
|
|
562
736
|
## 8. Git-Aware Repository Intelligence & Merge Conflict Safety
|
|
563
737
|
|
|
564
|
-
CodeGraph MCP v3.0.
|
|
738
|
+
CodeGraph MCP v3.0.1 tracks the exact evolution of repository code across commits, branches, and working tree changes:
|
|
565
739
|
|
|
566
740
|
```text
|
|
567
741
|
Repository state
|
|
@@ -617,31 +791,35 @@ Automate change impact directly in your CI pipeline with `.github/workflows/code
|
|
|
617
791
|
|
|
618
792
|
### 4-Tier Scaling Summary (`54` → `2,504` Files)
|
|
619
793
|
|
|
620
|
-
|
|
794
|
+
Empirically measured using [`benchmarks/run_v217_indexing_benchmark.py`](benchmarks/run_v217_indexing_benchmark.py) on macOS `arm64`, Python `3.13` with permanent SQLite WAL concurrency:
|
|
621
795
|
|
|
622
|
-
| Workload Tier | Files | Symbols | Graph Edges | Baseline Total | v3.0.
|
|
796
|
+
| Workload Tier | Files | Symbols | Graph Edges | Baseline Total | v3.0.1 Measured | Measured Improvement | Peak RSS | Peak WAL | Final WAL |
|
|
623
797
|
| :--- | ---: | ---: | ---: | ---: | ---: | :--- | ---: | ---: | ---: |
|
|
624
|
-
| **Small** | `54` | `115` | `398` | `0.527 s` | `0.
|
|
625
|
-
| **Medium** | `304` | `615` | `2,248` | `2.564 s` | `
|
|
626
|
-
| **Large** | `1,004` | `2,015` | `7,428` | `8.730 s` | `
|
|
627
|
-
| **Stress** | `2,504` | `5,015` | `18,528` | `21.983 s` | `
|
|
798
|
+
| **Small** | `54` | `115` | `398` | `0.527 s` | `0.447 s` | **15.2% faster (`1.18x`)** | `48.00 MB` | `1.701 MB` | `0.0 MB` |
|
|
799
|
+
| **Medium** | `304` | `615` | `2,248` | `2.564 s` | `2.159 s` | **15.8% faster (`1.19x`)** | `69.72 MB` | `4.082 MB` | `0.0 MB` |
|
|
800
|
+
| **Large** | `1,004` | `2,015` | `7,428` | `8.730 s` | `7.157 s` | **18.0% faster (`1.22x`)** | `127.59 MB` | `5.190 MB` | `0.0 MB` |
|
|
801
|
+
| **Stress** | `2,504` | `5,015` | `18,528` | `21.983 s` | `18.937 s` | **13.9% faster (`1.16x`)** | `233.59 MB` | `6.628 MB` | `0.0 MB` |
|
|
628
802
|
|
|
629
803
|
### Stress Tier (`2,504` Files) Phase Breakdown
|
|
630
804
|
|
|
631
|
-
| Phase / Metric | Legacy Baseline | v3.0.
|
|
805
|
+
| Phase / Metric | Legacy Baseline | v3.0.1 Measured | Measured Improvement |
|
|
632
806
|
| :--- | ---: | ---: | :--- |
|
|
633
|
-
| **Total Indexing Time** | `21.983 s` | `
|
|
634
|
-
| **Database Intelligence Pass** | `4.818 s` | `0.
|
|
635
|
-
| **Post-Processing Phase** | `13.770 s` | `
|
|
636
|
-
| **Symbol Resolution Phase** | `3.133 s` | `1.
|
|
637
|
-
| **
|
|
638
|
-
| **
|
|
807
|
+
| **Total Indexing Time** | `21.983 s` | `18.937 s` | **13.9% faster (`1.16x`)** |
|
|
808
|
+
| **Database Intelligence Pass** | `4.818 s` | `0.893 s` | **81.5% faster (`5.40x`)** |
|
|
809
|
+
| **Post-Processing Phase** | `13.770 s` | `12.061 s` | **12.4% faster (`1.14x`)** |
|
|
810
|
+
| **Symbol Resolution Phase** | `3.133 s` | `1.297 s` | **58.6% faster (`2.42x`)** |
|
|
811
|
+
| **AST Parsing Phase** | `3.410 s` | `3.230 s` | **5.3% faster (`1.06x`)** |
|
|
812
|
+
| **Cold CLI Single-File Re-index** | `4.408 s` | `3.665 s` | **16.9% faster (`1.20x`)** |
|
|
813
|
+
| **Live In-Memory Incremental (`watch`)** | Full scan required | `< 15ms` / file | **Event-driven cache patch** |
|
|
814
|
+
| **Throughput (`files/sec`)** | `113.9 files/s` | `132.2 files/s` | **`+16.1%` throughput** |
|
|
639
815
|
| **Peak SQLite WAL Size** | `46.980 MB` | `6.628 MB` | **85.9% reduction (`7.09x` smaller)** |
|
|
640
816
|
| **Final SQLite WAL Size** | `0.000 MB` | `0.000 MB` | **100% reclaimed (`TRUNCATE`)** |
|
|
641
817
|
|
|
818
|
+
> **Note on Incremental Reindexing**: The **3.665 s** incremental figure measures a cold CLI invocation (`codegraph index .`) on the full 2,504-file repository, traversing file mtimes and checking Git diff state. In contrast, the active background daemon (`codegraph watch`) receives OS kernel filesystem events directly, parsing only the modified file's AST and patching SQLite in **< 15ms**.
|
|
819
|
+
|
|
642
820
|

|
|
643
821
|
|
|
644
|
-
### 50-Task Production Benchmark Results (`v3.0.
|
|
822
|
+
### 50-Task Production Benchmark Results (`v3.0.1`)
|
|
645
823
|
|
|
646
824
|
Evaluated across 50 production tasks and 10 categories via [`benchmarks/run_v21_eval.py`](benchmarks/run_v21_eval.py):
|
|
647
825
|
|
|
@@ -659,6 +837,8 @@ Evaluated across 50 production tasks and 10 categories via [`benchmarks/run_v21_
|
|
|
659
837
|
|
|
660
838
|
### 32-Task A/B Exploration Evaluation ([`src/codegraph/tool_selection_eval.py`](src/codegraph/tool_selection_eval.py))
|
|
661
839
|
|
|
840
|
+
Evaluated across 32 agent navigation tasks comparing unassisted grep/file reading vs CodeGraph MCP tool calls:
|
|
841
|
+
|
|
662
842
|
| Metric (32-Task Evaluation Suite) | Mode A (Unassisted Grep & File Reads) | Mode B (CodeGraph MCP) | Measured Improvement |
|
|
663
843
|
| :--- | ---: | ---: | :--- |
|
|
664
844
|
| **Total Tool Calls (32 Tasks)** | `164 calls` (`~5.1 / task`) | `71 calls` (`~2.2 / task`) | **`-56.7% fewer tool calls`** |
|
|
@@ -671,6 +851,18 @@ Evaluated across 50 production tasks and 10 categories via [`benchmarks/run_v21_
|
|
|
671
851
|
|
|
672
852
|

|
|
673
853
|
|
|
854
|
+
### SWE-bench Comparative Benchmark Results (`benchmarks/swe_bench/`)
|
|
855
|
+
|
|
856
|
+
Evaluated against standard software engineering problem statements comparing unassisted agents (grep + full file reads) vs CodeGraph MCP tool-assisted agents:
|
|
857
|
+
|
|
858
|
+
| Metric | Baseline Mode (Grep / Read File) | CodeGraph MCP Mode | Measured Improvement |
|
|
859
|
+
| :--- | ---: | ---: | :--- |
|
|
860
|
+
| **Total Prompt Tokens Consumed** | `37,052 tokens` | `10,780 tokens` | **70.9% token reduction (`3.44x` efficiency)** |
|
|
861
|
+
| **Average Turns to Resolution** | `8.0 turns` | `2.0 turns` | **75.0% turn reduction (`4.00x` faster)** |
|
|
862
|
+
| **Direct Full-File Reads** | `14 files` | `0 files (0 bounded slices)` | **100.0% elimination of blind file reads** |
|
|
863
|
+
| **Fault Localization Accuracy** | `50.0%` | `100.0%` | **`+50.0%` accuracy** |
|
|
864
|
+
| **Resolution Status** | Partial / Stalled | `RESOLVED (100%)` | **Deterministic ground-truth symbol hit** |
|
|
865
|
+
|
|
674
866
|
---
|
|
675
867
|
|
|
676
868
|
## 10. Where CodeGraph MCP Fits
|
|
@@ -679,10 +871,10 @@ CodeGraph MCP works **alongside** your editor's language server (LSP), `ripgrep`
|
|
|
679
871
|
|
|
680
872
|
Legend: `✓` supported • `◐` partial / workflow-dependent • `—` not supported
|
|
681
873
|
|
|
682
|
-
| Capability | CodeGraph MCP (`v3.0.
|
|
874
|
+
| Capability | CodeGraph MCP (`v3.0.1`) | Editor LSP | Structural AST (`ast-grep`) | Lexical Search (`ripgrep`) | Remote Code Search (`Sourcegraph`) |
|
|
683
875
|
| :--- | :---: | :---: | :---: | :---: | :---: |
|
|
684
876
|
| **100% Local-First & Offline Operation** | ✓ | ✓ | ✓ | ✓ | — |
|
|
685
|
-
| **Native MCP Server for AI Agents** | ✓ (14 default /
|
|
877
|
+
| **Native MCP Server for AI Agents** | ✓ (14 default / 97 full) | — | ◐ | — | ✓ |
|
|
686
878
|
| **Multi-Transport Support (stdio + SSE HTTP)** | ✓ | — | — | — | ◐ |
|
|
687
879
|
| **Git-Aware AST Diffs & Freshness** | ✓ (6 Git tools) | — | — | — | ◐ |
|
|
688
880
|
| **Zero-Friction Runtime Interceptor (`codegraph run`)** | ✓ | — | — | — | — |
|
|
@@ -716,9 +908,9 @@ Run `codegraph privacy .` at any time to audit the local database and verify tha
|
|
|
716
908
|
|
|
717
909
|
---
|
|
718
910
|
|
|
719
|
-
## 12. MCP Tooling & Profiles (14 Default /
|
|
911
|
+
## 12. MCP Tooling & Profiles (14 Default / 97 Full)
|
|
720
912
|
|
|
721
|
-
By default, `create_server()` exposes the **14-tool `agent` profile** so AI coding agents receive a focused, non-overlapping tool surface. All
|
|
913
|
+
By default, `create_server()` exposes the **14-tool `agent` profile** so AI coding agents receive a focused, non-overlapping tool surface. All 97 verified tools are available under `--profile full`.
|
|
722
914
|
|
|
723
915
|
### Default `agent` Profile (14 High-Signal Tools)
|
|
724
916
|
|
|
@@ -748,7 +940,7 @@ By default, `create_server()` exposes the **14-tool `agent` profile** so AI codi
|
|
|
748
940
|
| **`graph`** | **17** | Call-graph traversal, blast-radius impact (`analyze_impact`), and test discovery. |
|
|
749
941
|
| **`minimal`** | **21** | Core interrogation plus `get_context`, `search_code`, `read_file`, and `verify_evidence`. |
|
|
750
942
|
| **`developer`** | **34** | Interactive development with Git history (`get_file_history`, `get_recent_changes`) and retrieval planning. |
|
|
751
|
-
| **`full`** | **
|
|
943
|
+
| **`full`** | **97** | Complete capability surface including **18 Symbol tools**, **16 Call Graph tools**, **11 Database tools**, **9 Blast Radius tools**, **9 Multi-Agent & Memory tools**, **7 Refactoring & Patch tools**, **6 Route & Drift tools**, **6 Security & Rule tools**, and **9 File/Maintenance tools**. |
|
|
752
944
|
|
|
753
945
|
---
|
|
754
946
|
|
|
@@ -764,7 +956,7 @@ codegraph install --print-config claude # Print MCP JSON + ru
|
|
|
764
956
|
codegraph install --dry-run # Preview planned file changes
|
|
765
957
|
codegraph uninstall --yes # Remove CodeGraph MCP agent integrations
|
|
766
958
|
|
|
767
|
-
# Git-Aware Repository Intelligence (v3.0.
|
|
959
|
+
# Git-Aware Repository Intelligence (v3.0.1)
|
|
768
960
|
codegraph git-state . # Track HEAD, working tree, and freshness (CLEAN/DIRTY/STALE)
|
|
769
961
|
codegraph git-diff HEAD~1 HEAD # Semantic AST diff across commits or branches
|
|
770
962
|
codegraph git-impact --tree # Deep downstream change impact with visual ASCII tree
|
|
@@ -772,7 +964,7 @@ codegraph git-conflicts main HEAD # Detect pre-merge se
|
|
|
772
964
|
codegraph check-freshness "audit auth flow" # Validate if compiled context is VALID or STALE
|
|
773
965
|
codegraph symbol-history resolve_target # Trace deterministic symbol lifecycle across commits
|
|
774
966
|
|
|
775
|
-
# Zero-Friction Runtime Interceptor (v3.0.
|
|
967
|
+
# Zero-Friction Runtime Interceptor (v3.0.1)
|
|
776
968
|
codegraph run npm run dev # Wrap Node/Express/Next.js dev server
|
|
777
969
|
codegraph run uvicorn main:app --reload # Wrap FastAPI/ASGI dev server
|
|
778
970
|
codegraph run python manage.py runserver # Wrap Django dev server
|
|
@@ -793,7 +985,7 @@ codegraph doctor --processes # Inspect active MCP
|
|
|
793
985
|
codegraph status . # Show index freshness (sub-50ms Git fast path)
|
|
794
986
|
codegraph doctor . --database --processes # Verify SQLite integrity, FKs, FTS, and memory
|
|
795
987
|
codegraph privacy . # Verify zero sensitive files indexed
|
|
796
|
-
codegraph version # Print CodeGraph MCP version (3.0.
|
|
988
|
+
codegraph version # Print CodeGraph MCP version (3.0.1)
|
|
797
989
|
|
|
798
990
|
# Code, Graph, Routes & Context Interrogation
|
|
799
991
|
codegraph search "authenticate" -r . # Search indexed symbols and text chunks
|
|
@@ -805,9 +997,24 @@ codegraph routes -r . --limit 25 --offset 0 # List routes with bo
|
|
|
805
997
|
codegraph architecture -r . # Summarize repository architecture
|
|
806
998
|
codegraph context "trace /api/v1/auth/login" -r . # Compile token-budgeted ContextPacket
|
|
807
999
|
|
|
1000
|
+
# Dead Code & Zombie Route Detection
|
|
1001
|
+
codegraph dead-code . # Audit zero-caller symbols, zombie routes & orphaned tables
|
|
1002
|
+
codegraph dead-code . --json # Output dead-code report as structured JSON
|
|
1003
|
+
|
|
1004
|
+
# Embedded OpenTelemetry (OTLP/HTTP) Receiver
|
|
1005
|
+
codegraph otel-listen --port 4318 # Listen for standard OTLP HTTP /v1/traces spans
|
|
1006
|
+
codegraph otel-listen --host 0.0.0.0 --port 4318 # Accept remote container telemetry streams
|
|
1007
|
+
|
|
1008
|
+
# Language Server Protocol (LSP) Bridge
|
|
1009
|
+
codegraph lsp . # Run stdio LSP server for VS Code / Neovim / Helix
|
|
1010
|
+
|
|
1011
|
+
# Multi-File Transactional Semantic Patch Engine
|
|
1012
|
+
codegraph refactor patch patch.json --dry-run # Preview patch diff & affected symbols (0 disk mutations)
|
|
1013
|
+
codegraph refactor patch patch.json # Apply patch atomically with syntax validation & rollback
|
|
1014
|
+
|
|
808
1015
|
# MCP Server Subcommands
|
|
809
1016
|
codegraph serve . # Start stdio MCP server (14 default tools)
|
|
810
|
-
codegraph serve . --profile full # Start stdio MCP server with all
|
|
1017
|
+
codegraph serve . --profile full # Start stdio MCP server with all 97 tools
|
|
811
1018
|
codegraph serve . --transport sse --port 8765 # Start SSE HTTP server on port 8765
|
|
812
1019
|
codegraph mcp serve . --transport sse # Alias for SSE MCP server
|
|
813
1020
|
codegraph mcp stop # Stop active MCP processes
|
|
@@ -817,7 +1024,7 @@ codegraph mcp stop # Stop active MCP pro
|
|
|
817
1024
|
|
|
818
1025
|
## 14. Documentation Map
|
|
819
1026
|
|
|
820
|
-
- **Deep Agent Brain &
|
|
1027
|
+
- **Deep Agent Brain & 97-Tool Reference**: [`docs/agent-brain.md`](docs/agent-brain.md)
|
|
821
1028
|
- **Compact Tool Capabilities Summary**: [`agent-rules/tool-capabilities-summary.md`](agent-rules/tool-capabilities-summary.md)
|
|
822
1029
|
- **Detailed Multi-Tool Capability Comparison**: [`docs/tool-comparison.md`](docs/tool-comparison.md)
|
|
823
1030
|
- **Antigravity Skill (`SKILL.md`)**: [`.agents/skills/codegraph/SKILL.md`](.agents/skills/codegraph/SKILL.md)
|
|
@@ -831,8 +1038,8 @@ codegraph mcp stop # Stop active MCP pro
|
|
|
831
1038
|
## 15. Contributing & License
|
|
832
1039
|
|
|
833
1040
|
```bash
|
|
834
|
-
git clone https://github.com/raghurammrsd/
|
|
835
|
-
cd
|
|
1041
|
+
git clone https://github.com/raghurammrsd/CODEGRAPH_MCP.git
|
|
1042
|
+
cd CODEGRAPH_MCP
|
|
836
1043
|
python3 -m venv .venv
|
|
837
1044
|
source .venv/bin/activate
|
|
838
1045
|
pip install -e ".[dev,mcp,system]"
|