java-knowledge-graph

Analyze JVM projects to generate knowledge graphs of modules and dependencies.

Updated Dec 17, 2024
One-click install
npx skills add https://github.com/LAF-US/IDAHO-VAULT --skill java-knowledge-graph-laf-us
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: java-knowledge-graph
Source: https://github.com/LAF-US/IDAHO-VAULT/tree/main/.ghcp-appmod/skills/java-knowledge-graph
Command: npx skills add https://github.com/LAF-US/IDAHO-VAULT --skill java-knowledge-graph-laf-us

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires tree-sitter, pyyaml, and includes scripts (resource) components.

What problem does it solve?

Analyzing large JVM codebases manually is time-consuming and error-prone; this skill automatically maps project structure, dependencies, and architecture into an actionable knowledge graph.

Core Features & Use Cases

  • Tree-sitter based parsing for Java, Kotlin, Scala, and Groovy to extract classes, interfaces, and relationships.
  • Detects Maven/Gradle/Ant/Ivy build systems and aggregates modules, dependencies, and properties into a coherent graph.
  • Generates visual graphs (DOT/SVG) and structured output to support onboarding, architecture reviews, and dependency audits.
  • Use Case: Onboard a new JVM project by generating a module/class diagram to understand module boundaries and dependencies at a glance.

Quick Start

Run the knowledge graph generator on your project to produce the complete graph and diagrams in the output directory.

Frequently Asked Questions about java-knowledge-graph

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I visualize JVM project architecture automatically?

To visualize JVM project architecture, this skill parses Java, Kotlin, Scala, and Groovy codebases to extract modules and dependencies, then generates DOT/SVG graphs for onboarding and architecture reviews.

How do I generate a dependency graph for a Gradle or Maven project?

Generating a dependency graph for Gradle or Maven involves detecting the build system inline, aggregating modules and properties, and outputting structured visual maps of your project dependencies.

Does tree-sitter parsing work for extracting class relationships in Scala and Groovy?

Yes, tree-sitter parsing works for extracting class relationships in Scala and Groovy, implementing self-contained grammar installation to map interfaces and dependencies across JVM languages.

Can I use this to audit dependencies across multiple JVM modules?

Yes, you can audit dependencies across multiple JVM modules by analyzing the generated knowledge graph, which aggregates Maven, Gradle, Ant, or Ivy build outputs into a coherent visual structure.

What is the best way to onboard new developers to a large Java codebase?

Onboarding new developers to a large Java codebase is best achieved by generating a module and class diagram, allowing them to understand module boundaries and dependencies at a glance.