Generate or update README.md documentation for Helm charts in this project. Extracts all values from values.yaml, describes deployed resources, and produces a complete README with architecture, installation, configuration table, and upgrade sections. Use when: documenting a chart, generating a README, updating docs after adding features or values. Trigger phrases: "document chart", "generate README", "update docs for chart", "generate documentation", "write README for chart".
71
89%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Generate or update README.md for a Helm chart in <chart-path>/.
Run scripts/setup.sh to verify required tools (uv). If any tools are missing, they can be installed by running scripts/setup.sh --install.
CHART_DIR=<chart-path> bash scripts/generate-documentation.shThe script parses values.yaml and outputs a markdown table:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| image.repository | string | docker.io/ubuntu/nginx | Container image repository |
| ...Read <chart-path>/Chart.yaml for:
name — chart namedescription — chart description (includes the rock name and rock description)version — chart versionappVersion — application versionRead <chart-path>/templates/ to identify deployed resources (Deployment, StatefulSet, Service, Ingress, ServiceAccount, ConfigMap, etc.).
Note any:
/bin/pebble health)Write <chart-path>/README.md following this structure:
# <chart-name>
<chart description from Chart.yaml>
## Architecture
<brief description of deployed resources: Deployment, Service, ServiceAccount, etc.>
<note Pebble-wired probes, volume mounts, or security constraints if present>
## Prerequisites
- Kubernetes 1.29+
- Helm 3.x
## Installation
\```bash
helm install my-<chart-name> <chart-path>/
\```
## Configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
<values table from Step 1>
## Upgrading
\```bash
helm upgrade my-<chart-name> <chart-path>/
\```The sections above are required. Add extra sections between Configuration and Upgrading when the chart warrants them (e.g. TLS, Prometheus metrics, persistence, high availability). Derive these from the templates and values — if a chart has metrics.enabled, tls.enabled, or persistence.enabled, document each in its own section.
Every value MUST have a non-empty description. If the script marks a value as (inferred):
image.repository → "Container image repository"runAsUser → "UID to run the container as (derived from the rock's OCI user)"livenessProbe.httpGet.path → "HTTP path for the liveness health check"No value may be left with an empty or (inferred) description in the final README.
values.yaml appears in the Configuration table(inferred)78b355b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.