github re-analysis due

CristianoCiuti/reponova

github

Turn your codebase into a knowledge graph. 11 MCP tools for AI code assistants — search, impact analysis, shortest path, semantic similarity, and more.

maintainer
CristianoCiuti
license
MIT
first seen
2026-06-06
last seen
2026-06-09
releases · 30d
13
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 11 tools
transport stdio · http counts 11 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • graph_community

    🏘️ List all nodes in a community, ranked by degree centrality.

  • graph_context

    🧠 Smart context builder with token budget — combines search + vectors + graph expansion.

  • graph_docs

    📄 Search documentation nodes (markdown, text, rst).

  • graph_explain

    📋 Full detail on a node: edges, community, centrality metrics, signature, docstring.

  • graph_hotspots

    🔥 God nodes / architectural bottlenecks — most connected symbols in the graph.

  • graph_impact

    💥 Blast radius analysis — find all upstream/downstream dependents of any symbol.

  • graph_outline

    🗂️ Tree-sitter code outline: functions, classes, imports with signatures and line ranges.

  • graph_path

    🛤️ Weighted shortest path (Dijkstra) between two symbols. Filter by edge type.

  • graph_search

    🔍 Full-text search across nodes. Filter by type, repo. Expand results with BFS/DFS.

  • graph_similar

    🧲 Semantic similarity search using vector embeddings (TF-IDF, ONNX, or remote provider).

  • graph_status

    📊 Graph metadata: node/edge counts, repos, build timestamp, version.

code evidence vv0.7.1 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

filesystem 53

  • fs CristianoCiuti-reponova-930c300/src/cli/check.ts :2 import { existsSync, statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/content/plugin-opencode.ts :7 import { existsSync } from "fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/targets/claude.ts :1 import { writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/targets/cursor.ts :1 import { writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/targets/opencode.ts :1 import { writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/targets/vscode.ts :1 import { writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/install/utils.ts :1 import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/lang-suggest.ts :26 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/lang.ts :10 import { existsSync, readFileSync, writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/cli/models.ts :5 import { existsSync, readdirSync, statSync, rmSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/extract/index.ts :10 import { readFileSync, existsSync, readdirSync, statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/extract/parser.ts :19 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/graph/export-json.ts :7 import { existsSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/graph/loader.ts :1 import { readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/intelligence/embeddings.ts :8 import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/intelligence/local-llm-engine.ts :5 import { existsSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/mcp/server.ts :9 import { statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/mcp/tools/outline.ts :11 import { existsSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/mcp/tools/similar.ts :10 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/mcp/tools/status.ts :2 import { existsSync, statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/build.ts :7 import { existsSync, mkdirSync, rmSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/cache.ts :15 import { readFileSync, existsSync, mkdirSync, readdirSync, unlinkSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/cache/utils.ts :2 import { readFileSync, writeFileSync, existsSync, readdirSync, statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/engine/phase.ts :1 import { existsSync, mkdirSync, rmSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/apply.ts :7 import { readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/batcher.ts :5 import { readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/finalize.ts :8 import { existsSync, readFileSync, copyFileSync, rmSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/llm-executor.ts :6 import { mkdirSync, writeFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/merge.ts :6 import { existsSync, readdirSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/metrics.ts :7 import { existsSync, readFileSync, rmSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/orchestrator.ts :7 import { existsSync, readFileSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/enrich/prepare.ts :7 import { existsSync, readFileSync, mkdirSync, readdirSync, rmSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/phases/communities.ts :7 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/phases/embeddings.ts :7 import { existsSync, readFileSync, rmSync, unlinkSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/phases/enrich.ts :6 import { copyFileSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/phases/html.ts :6 import { existsSync, unlinkSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/pipeline/phases/outlines.ts :14 } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/plugin/discovery.ts :17 import { readFileSync, existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/plugin/extension-scanner.ts :14 import { readdirSync, statSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/plugin/install-context.ts :19 import { existsSync, readFileSync, realpathSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/plugin/installed-check.ts :26 import { existsSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/query/context-builder.ts :28 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/query/db.ts :3 import { readFileSync, existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/query/vector-meta.ts :5 import { existsSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/query/vector-store.ts :7 import { existsSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/atomic-write.ts :15 import { writeFileSync, copyFileSync, unlinkSync, mkdirSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/community-labels.ts :8 import { existsSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/config.ts :1 import { readFileSync, existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/fs.ts :6 import { existsSync, readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/graph-resolver.ts :1 import { existsSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/hash.ts :8 import { readFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/path-resolver.ts :8 import { existsSync, symlinkSync, mkdirSync, readdirSync, statSync, copyFileSync } from "node:fs";
  • fs CristianoCiuti-reponova-930c300/src/shared/utils.ts :2 import { existsSync, readFileSync } from "node:fs";

shell / exec 1

  • shell CristianoCiuti-reponova-930c300/src/cli/lang.ts :9 import { spawnSync } from "node:child_process";

network 4

  • net CristianoCiuti-reponova-930c300/src/intelligence/embeddings.ts :288 const response = await fetch(url);
  • net CristianoCiuti-reponova-930c300/src/intelligence/openai-embedding-provider.ts :8 import { fetch, Agent } from "undici";
  • net CristianoCiuti-reponova-930c300/src/intelligence/openai-provider.ts :8 import { fetch, Agent } from "undici";
  • net CristianoCiuti-reponova-930c300/src/plugin/registry-client.ts :165 const res = await fetch(url, {

declared dependencies 29

  • @inquirer/checkbox@^3.0.1
  • @inquirer/confirm@^4.0.1
  • @modelcontextprotocol/sdk@^1.12.0
  • global-directory@^4.0.1
  • graphology@^0.26.0
  • graphology-communities-louvain@^2.0.2
  • graphology-layout-forceatlas2@^0.10.1
  • graphology-types@^0.24.8
  • js-tiktoken@^1.0.21
  • jsonc-parser@^3.3.1
  • picomatch@^4.0.4
  • sql.js@^1.11.0
  • undici@^8.3.0
  • web-tree-sitter@^0.25.10
  • yaml@^2.9.0
  • yargs@^17.7.2
  • zod@^3.22.0
  • @reponova/lang-plantuml@^0.1.0
  • @reponova/lang-python@^0.1.0
  • @reponova/lang-svg@^0.3.0
  • @types/node@^20.0.0
  • @types/picomatch@^4.0.3
  • @types/yargs@^17.0.0
  • tsup@^8.0.0
  • typescript@^5.4.0
  • vitest@^2.0.0
  • @lancedb/lancedb@^0.27.2
  • node-llama-cpp@^3.18.1
  • onnxruntime-node@^1.25.1