function-dep-search

Map function callers and callees across multi-language codebases with Tree-sitter.

4|2|Updated Feb 19, 2026
One-click install
npx skills add https://github.com/drunkcoding/AgentSkillsArxiv --skill function-dep-search
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: function-dep-search
Source: https://github.com/drunkcoding/AgentSkillsArxiv/tree/main/skills/function-dep-search
Command: npx skills add https://github.com/drunkcoding/AgentSkillsArxiv --skill function-dep-search

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

AST-based function dependency analysis using Tree-sitter to map callers and callees across multi-language codebases, enabling precise understanding of function relationships without grep-like noise.

Core Features & Use Cases

  • Cross-language function dependency discovery using Tree-sitter.
  • Generate definitions, call graphs, and transitive dependencies for blast-radius analysis.
  • Use in multi-language codebases to understand callers, callees, and refactoring impact.

Quick Start

Run fdep.py on your codebase to generate a complete function-dependency map.

Frequently Asked Questions about function-dep-search

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

FAQPage Schema
How do I map function dependencies across a multi-language codebase?

Function dependency mapping across multi-language codebases uses Tree-sitter AST parsing to identify callers and callees. It automatically detects languages like Python, Go, and Java to map cross-file relationships without grep noise.

How does AST-based call graph generation work for refactoring impact assessment?

AST-based call graph generation works by parsing syntax trees to extract function definitions and calls. It maps transitive dependencies across files, enabling precise blast-radius analysis and safe refactoring impact assessment.

Does Tree-sitter support static analysis for Python, JavaScript, and Rust simultaneously?

Yes, Tree-sitter supports static analysis for Python, JavaScript/TypeScript, Go, Rust, C, C++, and Java simultaneously. The tool auto-detects languages to analyze function dependencies across mixed codebases.

What is the best way to generate a JSON or Graphviz output for function call analysis?

The best way to generate JSON or Graphviz outputs for function call analysis is running the dependency script on your codebase. It maps callers and callees, optionally exporting structural relationship graphs for visualization.

Can I use static analysis to find transitive function dependencies without running the code?

Yes, static analysis finds transitive function dependencies without code execution. By leveraging Tree-sitter syntax trees, it extracts definitions and calls directly from source files to build complete dependency maps.

Are there limitations when using Tree-sitter for cross-file function call detection?

Tree-sitter cross-file function call detection relies on syntactic parsing, meaning dynamic calls or reflection may not map accurately. It focuses on statically resolvable definitions and calls within the analyzed codebase files.