Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 0 additions & 95 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,101 +147,6 @@ Then reads only lines 42-55.

---

## Architecture (v0.4)

```
codegraph/
__init__.py # version
__main__.py # thin argparse + dispatch
indexer.py # parse + graph ingestion engine (the only
# top-level .py beside the entrypoints)

core/ # shared infrastructure
protocol.py # GraphDB / QueryResult Protocols (backend boundary)
db.py # backend selection + cached conns
db_duckdb.py # DuckDB adapter (default backend since v0.4)
db_kuzu.py # Kuzu adapter (opt-in via CGH_DB=kuzu)
graph_model.py # NODES / EDGES schema dicts shared by both backends
schema.py # Kuzu DDL
schema_duckdb.py # DuckDB DDL
utils.py # rows(), short_path(), normalize_identifier(), ...
config.py # layered TOML config
fts.py # BM25 full-text search (SQLite FTS5)

parsers/ # plugin registry (auto-discovery)
base.py # BaseParser ABC + FileIndex dataclass
builtins.py # per-language built-in callables (filter)
python.py, typescript.py, vue.py
golang.py, rust.py, java.py
terraform.py, markdown.py, plaintext.py

imports/ # JS / TS import resolution
resolver.py # entry point: resolves any import to a Path
tsconfig.py # tsconfig.json paths + extends + JSONC
workspaces.py # npm / pnpm / yarn / lerna workspace packages

state/ # per-repo runtime state
auth.py # MCP auth key
activity.py # activity log (parse_error, scan events)
call_log.py # per-MCP-tool call log + stats
scan_meta.py # last-indexed git SHA + freshness
watcher.py # watchdog-based live file watcher
ipc.py # stdio <-> HTTP bridge for cgh serve
pidfile.py # single-writer lock for the owner process

analysis/ # higher-level graph analysis
context_builder.py # AI context builder (graph + FTS)
dead_code.py # unused symbol detection
federation.py # multi-repo federation (parent reads child DBs)
endpoints.py # HTTP endpoint extraction (FastAPI / Nuxt)
module_doc.py # one-line module summary extraction
roles.py # file role classification by path conventions
pattern.py # regex / substring search across indexed files

claude_state/ # indexing of ~/.claude/* state
memory.py # memory_search / memory_list FTS index
plans.py # plan_search / plan_list FTS index

server/ # MCP server
__init__.py # FastMCP setup + owner process main()
tools_query.py # symbol_lookup, callers, callees, imports, subgraph
tools_docs.py # search_docs, doc_outline, doc_refs
tools_index.py # scan_repo, index_changed, force_index
tools_viz.py # visualize_graph, graph_stats
tools_arch.py # arch / role / endpoint tools
tools_meta.py # fts_search, dead_code, context_for_task

cli/ # Rich CLI
commands_init.py # init, setup, parsers
commands_index.py # index, watch, serve, force-index
commands_monitor.py # stats, status, logs, history, diff, doctor
commands_query.py # search, lookup, callers, callees, outline
commands_graph.py # graph, add-dir
commands_hooks.py # _hook_precheck_grep / _hook_precheck_read
commands_federate.py # federate add / list / verify

integrations/ # per-AI-tool integration glue
skill_installer.py # install bundled skills to .claude/, .cursor/, ...
post_commit.py # Claude Code post-commit hook handler
claude-code.md, cursor.md, codex.md, gemini.md

viz/ # diagram rendering
mermaid.py # Mermaid diagram generators
html.py # HTML template + browser open

skills/ # bundled Claude Code skills shipped with the package

tests/ # 235+ tests (pytest)
test_parsers/ # Python, TS, Go, Rust, Java, tsconfig, workspaces
test_core/ # db, utils, normalize_identifier
test_indexer/ # engine, builtins, safe_extract, imports_edges
test_search/ # FTS
test_server/ # MCP server tools, federation
test_memory_plans/ # memory + plan indexing
```

---

## CLI Reference

All commands accept `--root <DIR>` to target a different project. The CLI is `cgh`; the Python import is `codegraph` (see Install above).
Expand Down