Shaaf's blog

A technical blog about Java, Kubernetes and things that matter

Introducing rgctl: A Code Knowledge Graph for Engineering Teams and Agents

Index once, query many times — structural facts instead of confident guesses

rgctl turns any repository into a queryable knowledge graph with pre-computed reachability, blast radius, program slicing, taint analysis, and community detection. Built in Rust for speed, designed for LLM agents and humans alike.

Blast Radius for Agent-Assisted Development on Kubernetes

Why structured impact queries matter when you pair with a coding agent

If you use Cursor or Claude Code on large repos, blast radius gives your agent bounded structural facts instead of grep guesses. A Kubernetes walkthrough for engineers: what to expect, when it helps, and when your IDE is still the better tool.

Lessons from Building My First Claude Skill - a code tutorial generator

About a year ago, I kicked off (Waver), a project designed to analyze codebases and build developer friendly, readable tutorials. The goal was to generate clean Markdown and Mermaid diagrams so onboarding becomes frictionless and the docs can slide right into existing project pipelines.

I chose Langchain4J for the LLM integration. And in a classic “engineers-quest”, I actually ended up building JGraphlet as well, which came to life while I was trying to squeeze better performance out of the LLM communication.


Rendering powerpoint to png files with JBang

Part of my daily work is to create instructions for workshops, and labs. One of the things in that entire content creation process, is to take screenshots and matching instructions and inorder to do that sometimes I need to add arrows, boxes, etc.. Using something like Google docs is pretty easy at that point, drag the screen shot create the overlay items. This time around I ended up having tons of such slides (a little over exaggeration). The next problem, download them as PNG files to add to the instructions. Out of all the nice usability tricks Google docs does not allow me to optimize on this. So I have to download one slide image at a time. yes really!! Well that was some rant, but hey now we have a JBang script that will do the rest. :)


Modernizing Legacy Code with Konveyor AI: From EJB to Kubernetes

I always enjoy participating in KubeCon. This time it was at the RAI center in Amsterdam. I have been to many conferences and the ones that are the best IMHO are the ones that are very community focused. For example DevNexus for Java, GeeCon for Geeks ;), and obviously KubeCon for everything Kubernetes. And obvsiouly making new friends and connections is a great way of learning from all the cool stuff thats going on. Thats probably enough name dropping for a wednesday ;)