building-java-knowledge-graph
Analyzes JVM projects (Java/Kotlin/Scala/Groovy) and generates knowledge graphs with tree-sitter parsing. Requires Python 3 on the host and a JVM project with Maven/Gradle/Ant/Ivy build files. Skips gracefully if either prerequisite is missing. Triggers when asked to "build knowledge graph", "analyze project structure", "parse Java codebase", or "generate dependency graph".
Works with
---
name: building-java-knowledge-graph
description: Analyzes JVM projects (Java/Kotlin/Scala/Groovy) and generates knowledge graphs with tree-sitter parsing. Requires Python 3 on the host and a JVM project with Maven/Gradle/Ant/Ivy build files. Skips gracefully if either prerequisite is missing. Triggers when asked to "build knowledge graph", "analyze project structure", "parse Java codebase", or "generate dependency graph".
license: MIT
---
## Prerequisites
**Step 1 — Verify JVM project:**
```bash
find "$PROJECT_ROOT" -maxdepth 5 -type f \( -name "*.java" -o -name "*.kt" -o -name "*.scala" -o -name "*.groovy" \) | head -1
```
> If no JVM files found: skip this skill. Set `knowledge_graph_dir` to `null` in `setup_artifacts`. Non-fatal — downstream agents fall back to direct source analysis.
**Step 2 — Verify Python:**
```bash
python3 --version 2>/dev/null || python --version 2>/dev/null
```
> If unavailable: skip this skill with same fallback as above.
## Quick Start
```bash
# First-time setup (~1 minute)
pip3 install --user 'tree-sitter<0.21'
python3 scripts/install_grammars.py
# Optional: SVG generation
brew install graphviz # macOS
# Analyze project
python3 scripts/build_knowledge_graph.py /path/to/project output-dir
```
⚠️ **DESTRUCTIVE OUTPUT**: The script wipes ALL files in `output-dir` before writing. **NEVER** point it at a shared directory like `{{BASE_PATH}}/` or `{{BASE_PATH}}/artifacts/`. Use a dedicated subdirectory:
```
# ✅ SAFE — dedicated subdirectory
python3 scripts/build_knowledge_graph.py /path/to/project {{BASE_PATH}}/artifacts/kg_output
# ❌ DANGER — will delete constitution.md, board.md, other artifacts!
python3 scripts/build_knowledge_graph.py /path/to/project {{BASE_PATH}}
```
After the script finishes, copy `knowledge-graph.json` to `{{BASE_PATH}}/` for other agents to consume.
## What It Detects
- **Build systems**: Maven (pom.xml), Gradle (build.gradle*), Ant (build.xml), Ivy (ivy.xml)
- **Languages**: Java, Kotlin, Scala, Groovy via tree-sitter AST
- **Structure**: Modules, packages, classes, interfaces, enums, annotations
- **Relationships**: Inheritance, implementations, module dependencies
- **Patterns**: Architecture layers (controller/service/repository/model/config/util)
- **Config**: `application*.properties`, `application*.yaml/yml`
- **Gradle subprojects**: `settings.gradle` parsing
## Output
All outputs are written under **the provided artifact path** (pass as 2nd argument to the script).
```
knowledge-graph.json ← complete graph (nodes + edges)
module-dependencies.{dot,svg} ← module dependency diagram
module-{name}.{dot,svg} ← per-module class diagrams
project-{name}.{dot,svg} ← complete project diagram
```
## Resources
- `references/schema.md` — node/edge types, ID patterns, fields, visualization colors
- `references/querying.md` — jq and Python query examples
- `scripts/build_knowledge_graph.py` — main analyzer
- `scripts/install_grammars.py` — grammar installerMore Mobile skills
animation-vocabulary
emilkowalski/skills
Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.
xcode-project-setup
firebase/agent-skills
Safely modifies Xcode projects (.pbxproj) to add Swift Packages and link files. Use this skill whenever an iOS project needs dependencies installed (e.g. Firebase, Alamofire).
cross-border-ecommerce
nexscope-ai/ecommerce-skills
Cross-border e-commerce expansion advisor. Scores target markets on 8 weighted dimensions (market size, ecommerce penetration, competition, regulatory complexity, logistics infrastructure, payment ecosystem, cultural distance, IP protection), compares 5 fulfillment models with cost and transit data, provides country-by-country tax/duty compliance guides (EU VAT/IOSS, UK VAT, US sales tax, CA GST, AU GST, JP consumption tax), maps local payment preferences by market, and builds a phased expansion roadmap. No API key required.

