Skip to content
Skills Library
Programming · Analysis

flamegraph

/flamegraph

Build a function call-graph flamegraph website for a Java codebase. Parses the sources, extracts every method and the calls between them, and renders a light-theme site where the user picks any class or method and sees its call tree as a hand-drawn SVG flamegraph. Use when the user runs /flamegraph or asks for a call graph, call-graph flamegraph, or a visualization of which methods call which.

Licence
Unlicense
Last repository change
23.10.2026

Assessment and security

95/ 100Class: good
Format20 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
2
Scripts
1
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 23.10.2026, without references to retired models or APIs.

Licence

Unlicense, otwarta.

What to check before installing
  • 1 scripts in this package. Review them before installing, as Claude may execute them.

Scripts: build_flamegraph.py

What it does and when to use it

Build a function call-graph flamegraph website for a Java codebase. Parses the sources, extracts every method and the calls between them, and renders a light-theme site where the user picks any class or method and sees its call tree as a hand-drawn SVG flamegraph. Use when the user runs /flamegraph or asks for a call graph, call-graph flamegraph, or a visualization of which methods call which.

Original author description

Build a function call-graph flamegraph website for a Java codebase. Parses the sources, extracts every method and the calls between them, and renders a light-theme site where the user picks any class or method and sees its call tree as a hand-drawn SVG flamegraph. Use when the user runs /flamegraph or asks for a call graph, call-graph flamegraph, or a visualization of which methods call which.

How it works

  1. Steps
  2. Notes
Original SKILL.md headings · 25 lines, 285 words
SKILL.md preview
---
name: flamegraph
description: Build a function call-graph flamegraph website for a Java codebase. Parses the sources, extracts every method and the calls between them, and renders a light-theme site where the user picks any class or method and sees its call tree as a hand-drawn SVG flamegraph. Use when the user runs /flamegraph or asks for a call graph, call-graph flamegraph, or a visualization of which methods call which.
---

# flamegraph

Generate a static call-graph flamegraph website for the Java project the user is working on.

## Steps

1. Find the Java source root. Prefer `src/main/java`; if absent, use the directory the user points at or the closest directory containing `.java` files. If the user names a specific module or subproject, scope to it.
2. Run the generator that ships with this skill:

   ```
   python3 ~/.claude/skills/flamegraph/build_flamegraph.py <java-src-dir> <out-dir> [title]
   ```

   Use `flamegraph-site` inside the target project as `<out-dir>` unless the user asks for another location, and pass the project name as the title.
3. The script writes a single self-contained `index.html`. Serve it with `python3 -m http.server` from `<out-dir>` (pick a free port) or tell the user to open the file directly, then report the URL or path.
4. Tell the user how to use the site: the left panel lists every class and method, the search box filters it, clicking any method roots the flamegraph at that method, clicking a frame re-roots into it, and the breadcrumb trail walks back up. Frame width is proportional to the number of distinct call paths underneath, hovering shows file, line, and fan-in/fan-out, and a `↺` mark means a recursive cycle was pruned.

## Notes

- The site is light themed and hand-drawn in style: wobbly SVG frames, pastel fills per class, handwriting fonts.
- The call graph is static: it is resolved from source text via field, parameter, and local-variable types, so dynamic dispatch through interfaces resolves only when the declared type itself defines the method.
- The generator needs only the Python standard library; do not install anything.
- If the script reports no methods found, confirm the path actually contains `.java` files before retrying.
Files in this package (2)
  • SKILL.md 2 KB
  • build_flamegraph.py 15 KB

Versions

The database has no other skills named flamegraph.

Database snapshot: 13.11.2026 · package version f264df10ef80 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100flamegraphs
    Use when turning perf, DTrace, pprof, or async-profiler stacks into an SVG flamegraph with the FlameGraph scripts, reading one, or diffing two profiles. Not for collecting data: use linux-perf.
  • 100analyze-performance
    Establish performance baselines and detect regressions using flamegraph analysis. Use when optimizing performance-critical code, investigating performance issues, or before creating commits with performance-sensitive changes.
  • 100164-java-profiling-verify
    Use when you need to verify Java performance optimizations by comparing profiling results before and after refactoring — including baseline validation, post-refactoring report generation, quantitative before/after metrics comparison, side-by-side flamegraph analysis, regression…
  • 100flamegraphs
    Flamegraph generation and interpretation skill. Use when converting perf, Valgrind Callgrind, or other profiler output into SVG flamegraphs using Brendan Gregg's FlameGraph tools, or when reading flamegraphs to identify performance bottlenecks. Activates on queries about…
  • 95dead-code
    Find dead Java code by static reachability from entry points. Parses the sources, builds the method call graph, walks it from real entry points (main, Spring web/lifecycle/scheduler handlers, JUnit tests, framework callbacks), and renders a light-theme website with summary…
  • 100performance-expert
    Expert performance optimization across CPU, memory, I/O, and rendering. Trigger keywords: performance, slow, profiling, profiler, optimize, latency, throughput, p99, memory leak, allocation, bottleneck, benchmark, flamegraph, N+1, cache. Use to diagnose and fix performance…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.