
airhacks.fm podcast with adam bien· Folge 418
Agents Have No Runtime Insight
Dienstag, 13. Oktober 2026
Kapitelklicken springt direkt hin
Shownotes
An airhacks.fm conversation with Ingo Kegel (twitter.com/IngoKegel) about:
discussion about JProfiler (ej-technologies.com/jprofiler) becoming agentic,
the JProfiler MCP server (ej-technologies.com/jprofiler/mcp) included in the existing perpetual license,
perpetual licenses bound to a major version with optional maintenance,
JFR (openjdk.org/jeps/328) events as a JProfiler data source and JProfiler as a JFR viewer,
instrumenting a small agent with JFR events to trace what the agent does,
agents have no runtime insight without tooling,
grep and glob versus attaching to a running JVM and recording CPU data,
the token cost of an agent reasoning without runtime data,
iterative optimization of github.com/ingokegel/jclasslib with an agent until it outperformed ASM (asm.ow2.io),
the blog post How I Doubled jclasslib's Performance with JProfiler MCP (ej-technologies.com/blog/2026/04/how-i-doubled…),
agents spotting duplicated work and caching opportunities a human skips,
review before commit with tests as the safety net,
exposing a deliberate subset of profiler functionality to the agent,
MCP (modelcontextprotocol.io) tool calls as an area with little training data,
code mode (blog.cloudflare.com/code-mode) from Cloudflare,
the MCP flow with a session id,
setup,
use and cleanup,
memory analysis with the dominator tree and retained size,
the heap walker (ej-technologies.com/resources/jprofiler/help/d…) as the most complex part for humans,
counting surviving garbage collection generations to find memory leaks,
OQL (visualvm.github.io/documentation.html) in VisualVM (visualvm.github.io) and the docs.oracle.com/javase/8/docs/technotes/tools/… tool,
npm as a proxy for a local Java (java.com/en) MCP server,
JBang (jbang.dev) and the absent prerequisite problem,
single file Java 25 source programs (openjdk.org/jeps/330) as MCP servers,
installers and scripts,
github.com/AdamBien/lightmetal,
github.com/AdamBien/zsmith and github.com/AdamBien/zb,
github.com/ggml-org/llama.cpp behind the FFM API (openjdk.org/jeps/454) and TornadoVM (tornadovm.org) for pure Java inference,
Gemma (deepmind.google/models/gemma) models for local one shot automation,
docs.oracle.com/en/java/javase/25/docs/api/jav… with docs.oracle.com/en/java/javase/25/docs/api/jav… to couple two projects without shared code,
hard wiring tools and skills into task specific agents instead of discovery,
MCP as a facade over tools that a custom agent does not need,
conflicting skills pulling an agent in different directions,
the ej-technologies.com/install4j skill and its evaluation harness with external judges,
the AI probe (ej-technologies.com/jprofiler/whatsnew) in JProfiler 16 measuring input and output tokens per call tree,
prompt to token ratio as a metric,
normative APIs and Java being well represented in LLM training data,
Boundary Control Entity (en.wikipedia.org/wiki/Entity-control-boundary) packages named after the domain,
Ivar Jacobson (en.wikipedia.org/wiki/Ivar_Jacobson) and the age of the pattern,
AI Rails (airails.dev) skills,
Claude Code (anthropic.com/claude-code) and Codex (openai.com/codex),
continuous testing and continuous performance testing with an exit condition,
zb as a zero dependency builder with single file tests using assert (docs.oracle.com/javase/specs/jls/se25/html/jls…),
the missing JSON API in the JDK (openjdk.org/jeps/198),
where to find JProfiler and ej-technologies
Ingo Kegel on twitter: @IngoKegel (twitter.com/IngoKegel)