with one click
kg-extract
// Extract entities and relations from source files to build a knowledge graph
// Extract entities and relations from source files to build a knowledge graph
Comprehensive GitHub project management with swarm-coordinated issue tracking, project board automation, and sprint planning
Comprehensive GitHub code review with AI-powered swarm coordination
Multi-repository coordination, synchronization, and architecture management with AI swarm orchestration
Comprehensive GitHub release orchestration with AI swarm coordination for automated versioning, testing, deployment, and rollback management
Advanced GitHub Actions workflow automation with AI swarm coordination, intelligent CI/CD pipelines, and comprehensive repository management
Comprehensive truth scoring, code quality verification, and automatic rollback system with 0.95 accuracy threshold for ensuring high-quality agent outputs and codebase reliability.
| name | kg-extract |
| description | Extract entities and relations from source files to build a knowledge graph |
| argument-hint | <path> |
| allowed-tools | Read Glob Grep mcp__claude-flow__agentdb_hierarchical-store mcp__claude-flow__agentdb_causal-edge mcp__claude-flow__agentdb_pattern-store mcp__claude-flow__embeddings_generate Bash |
Extract entities (classes, functions, modules, types, concepts) and their relations (imports, extends, implements, depends-on, calls) from source files, then store them as a knowledge graph in AgentDB.
When you need to build or update a knowledge graph from source code or documentation. Useful for understanding codebase structure, dependency analysis, and impact assessment.
Scan files -- use Glob and Read to enumerate and read source files at the given path
Identify entities -- extract classes, functions, modules, types, and config references from each file
Map relations -- for each entity, determine its relations to other entities. Critical: TypeScript import type and inline type specifiers (import { type Foo, bar }) are erased at compile time and MUST NOT be counted as value imports -- they're a separate, weaker relation. Misclassifying them produces phantom runtime cycles (see ruvnet/ruflo#2049).
imports: value imports (import { x } from '...', require(...)) -- weight 0.9type-depends-on: TypeScript type-only imports (import type { Foo } from '...' and import { type Foo, value } from '...') -- weight 0.1, never used for cycle detection or runtime impact analysisextends: class inheritance -- weight 0.9implements: interface implementations -- weight 0.7depends-on: constructor dependencies, injected services -- weight 0.8calls: function/method invocations -- weight 0.7references: documentation mentions, comments -- weight 0.3Regex hint for classifying TS imports (so a naive from '...' grep doesn't conflate the two):
^\s*import\s+type\s+ → type-depends-on (entire import is type-only)
^\s*import\s*\{[^}]*\btype\s+\w+ → split: type specifiers → type-depends-on, value specifiers → imports
^\s*import\s+[^{]*\bfrom\s+ → imports (value)
Store in AgentDB -- call mcp__claude-flow__agentdb_hierarchical-store for each entity with metadata (name, type, file, line, description)
Create edges -- call mcp__claude-flow__agentdb_causal-edge for each relation with source, target, relation type, and weight
Report -- summarize: total entities by type, total relations by type, files scanned
npx @claude-flow/cli@latest memory store --namespace knowledge-graph --key "entity-NAME" --value "METADATA_JSON"
npx @claude-flow/cli@latest memory search --query "entities in auth module" --namespace knowledge-graph