jhelm — Java Implementation of Helm
jhelm is a native Java implementation of the Helm package manager for Kubernetes. It provides an embeddable library, a Spring Boot starter, a REST API, and a standalone CLI to work with Helm charts from the JVM — without shelling out to the Go-based Helm binary.
1. Helm-faithful rendering, in pure Java
jhelm renders chart templates byte-for-byte identically to helm template across a
continuously-run suite of 540+ real-world charts (Bitnami, Grafana, GitLab,
Kubernetes-monitoring, and more) — in pure Java, with no Go or helm binary. Parity is
enforced in CI on every change, so behaviour tracks upstream Helm closely rather than
approximating it. Rendering is driven by the standalone
gotmpl4j Go-template engine.
2. MCP-native
The same operations are exposed as Model Context Protocol tools, so an AI agent can render charts, search ArtifactHub, and manage releases directly — no shelling out, no glue code. See MCP Server.
3. Key Features
-
Go template engine — the full Go
text/templatelanguage with Helm’s Sprig function set and Helm-specific functions (include,tpl,required,lookup,toYaml, …), provided by the standalone gotmpl4j library. -
Chart lifecycle management — install, upgrade, rollback, uninstall, list, status, history, test
-
Repository & OCI registries — add/remove repos, search, pull, push
-
Dependency management — list, update, build chart dependencies
-
Packaging & provenance — package charts to
.tgz, PGP sign and verify -
Spring Boot auto-configuration — programmatic action API with
@ConfigurationProperties -
REST API — Spring MVC endpoints with OpenAPI/Swagger documentation (pure library plus a
jhelm-rest-starter) -
MCP server — exposes jhelm operations as Model Context Protocol tools for AI agents (built on Spring AI)
-
JSON Schema validation — validates chart values against
values.schema.json(Draft-07) -
Async Kubernetes operations — Java 21 virtual threads via
AsyncKubeService
4. Technology Stack
-
Java 21
-
Spring Boot 4.0.7
-
Kubernetes Client 26.0.0
-
gotmpl4j 1.1.0 (Go template + Sprig engine)
-
Picocli 4.7.7 (CLI framework)
5. Quick Links
-
Getting Started — build, run the CLI, or add jhelm as a library
-
Spring Boot Starter — programmatic API with auto-configured beans and code samples
-
REST API — HTTP endpoints and OpenAPI documentation
-
MCP Server — jhelm operations as Model Context Protocol tools for AI agents
-
CLI Reference — all commands, options, and examples
-
Configuration —
jhelm.*properties reference -
Security — the unified
jhelm.security.*model for REST and MCP -
Architecture — module structure and design
-
Helm Functions — the Helm-specific template function catalogue
-
Roadmap — planned features and compatibility matrix