About K8sTools

K8sTools is an offline workbench for Kubernetes manifests. It parses and analyses YAML in your browser. It never connects to a cluster, runs kubectl, or uploads what you paste. The results are static analysis of the files you supply and are always labelled as such.

Installed packs

Schema pack
k8stools-core-schema 2026.10.0 (2026-10-30)
Versions
1.27, 1.28, 1.29, 1.30, 1.31, 1.32, 1.33 (authored against 1.31)
Kinds
apps/v1 Deployment, apps/v1 StatefulSet, apps/v1 DaemonSet, v1 Pod, v1 Service, networking.k8s.io/v1 Ingress, v1 ConfigMap, v1 Secret, batch/v1 Job, batch/v1 CronJob, autoscaling/v2 HorizontalPodAutoscaler, autoscaling/v1 HorizontalPodAutoscaler, policy/v1 PodDisruptionBudget, networking.k8s.io/v1 NetworkPolicy, rbac.authorization.k8s.io/v1 Role, rbac.authorization.k8s.io/v1 ClusterRole, rbac.authorization.k8s.io/v1 RoleBinding, rbac.authorization.k8s.io/v1 ClusterRoleBinding, v1 ServiceAccount, v1 PersistentVolumeClaim, v1 Namespace
Deprecations
k8stools-api-removals 2026.10.0 (2026-10-30)

Self-authored partial structural schema, written by hand from the public Kubernetes API reference. Not generated from, and not a substitute for, the upstream OpenAPI v3 schema or server-side validation. Deployment, StatefulSet, DaemonSet, Pod, Service, Ingress, ConfigMap, Secret, Job, CronJob, HorizontalPodAutoscaler, PodDisruptionBudget, NetworkPolicy, Role, ClusterRole, RoleBinding, ClusterRoleBinding, ServiceAccount, PersistentVolumeClaim, Namespace. Affinity, topology spread, lifecycle hooks, most volume sources and HPA metrics are accepted without checking (partial). Hand-compiled from the public Kubernetes Deprecated API Migration Guide. Covers removals in 1.16 through 1.32 for the listed kinds.

Feature status

Mapped to requirement IDs in the product specification. NATIVE = local and deterministic; APPROX = local arithmetic or heuristics with stated assumptions; EXPLAIN = explanation only; UNSUPPORTED = not available.

IDCapabilityStatusLabelWhereNotes
K8S-001Versioned Kubernetes packsPartialNATIVEAll pagesSelf-authored partial schema pack 2026.10.0 for 1.27–1.33 and a dated removal pack. Not the upstream OpenAPI schema. Unknown kinds are never shown as valid.
K8S-002Multi-document YAML editorDoneNATIVE/manifest-editorSource text is never reformatted; per-document identity, duplicate detection, line markers, file import, autosave and checkpoints. Plain textarea, no syntax colouring.
K8S-003Schema validatorDoneNATIVE/yaml-validatorEight-stage pipeline with separate YAML/schema/cross-object/policy findings. CRDs are syntax-only.
K8S-004Deployment/Pod builderDoneNATIVE/deployment-generatorLive validation of the output.
K8S-005Service/Ingress builderDoneNATIVE/service-generatorIngress via the Deployment generator; the Ingress class is a placeholder because controller behaviour is not invented.
K8S-006ConfigMap/Secret helperDoneNATIVE/secret-encoderMasked by default; not persisted.
K8S-007Resource quantity calculatorDoneNATIVE/resource-calculatorExact BigInt rationals.
K8S-008Requests/limits analyzerDoneAPPROX/resource-calculatorInit/sidecar/overhead/replica/surge rules with listed assumptions. LimitRange defaults are unknown.
K8S-009Probe builder/checkerDoneAPPROX/probe-builderTiming is arithmetic and ignores kubelet jitter.
K8S-010Selector/label matchingDoneNATIVEWorkbench, /service-generatormatchLabels and matchExpressions.
K8S-011Workload relationship graphDoneNATIVE/manifest-editorSVG plus an accessible table; unsupplied targets are kept as dashed nodes.
K8S-012Port/service target inspectorDoneNATIVEWorkbench, /service-generator
K8S-013API deprecation scannerDoneNATIVE/api-deprecationsCannot know which APIs your cluster enables.
K8S-014Manifest diffDoneNATIVE/manifest-diffIgnore options are explicit and off by default.
K8S-015Redaction/exportDoneAPPROX/redactHeuristic detection with review and a self-check.
K8S-016Security-context checklistDoneNATIVEWorkbench → SecurityBaseline/restricted-inspired rules. Not Pod Security Admission and not a certification.
K8S-017RBAC explorerDoneNATIVE/rbac-analyzerAggregation resolved from supplied roles only, with a partial badge.
K8S-018NetworkPolicy explainerDoneAPPROX/network-policyIPv4 ipBlock only; CNI enforcement is unknown.
K8S-019Manifest templatesDoneNATIVE/templatesUnit-tested against every pack version.
K8S-020Command generatorDoneNATIVEWorkbench → kubectlShell-quoted, placeholders, never executed.
K8S-021Documentation exportDoneNATIVEWorkbench → ExportMarkdown and JSON with revision and pack versions.
K8S-022CRD schema importNot doneUNSUPPORTED—Roadmap. CRDs stay syntax-only.
K8S-023Policy-as-code rulesNot doneUNSUPPORTED—Built-in rules can be toggled; user-authored policies are on the roadmap.
K8S-024PVC/storage plannerPartialNATIVEValidatorPVC schema and claim references only.
K8S-025Affinity/toleration explainerNot doneUNSUPPORTED—Affinity is accepted without checks (partial coverage).
K8S-026HPA/PDB/rollout analysisPartialAPPROX/resource-calculatorSurge rounding, HPA max scenario, PDB selector checks.
K8S-027CronJob schedule previewDoneAPPROX/cronjob-calculatorUses the browser time zone database.
K8S-028Environment overlay comparePartialNATIVE/manifest-diffTwo-bundle comparison; no overlay provenance.
K8S-029Qualified Kustomize renderingNot doneUNSUPPORTED—No qualified local implementation.
K8S-030Qualified Helm renderingNot doneUNSUPPORTED—No qualified local implementation; lookup/plugins would be blocked.
K8S-031Migration assistantDoneNATIVE/api-deprecationsField-aware patches with unresolved notes, never a text replace.
K8S-032Certificate metadata viewerNot doneUNSUPPORTED—Roadmap.
K8S-033Local explanation modelNot doneUNSUPPORTED—R3.
K8S-034Offline assessment bundlePartialNATIVEWorkbench → ExportReport export; no signed bundle.
K8S-035Live cluster validation/healthExcludedUNSUPPORTED—Never inferred from static files.
K8S-036Registry CVE freshnessExcludedUNSUPPORTED—Requires external services.
K8S-103NetworkPolicy scenario testsDoneAPPROX/network-policy
K8S-104ServiceAccount token reviewPartialNATIVESecurity rulesautomountServiceAccountToken check.
K8S-105Image-reference hygieneDoneNATIVESecurity rulesNo registry contact.
K8S-106Volume-mount consistencyDoneNATIVEValidatorMissing volumes, path overlaps, claim refs.
K8S-107Env/config dependency matrixPartialNATIVEGraph + findingsMissing keys flagged; no matrix view.
K8S-108Job retry/completion planningPartialEXPLAIN/cronjob-calculatorExplanations only.
K8S-109Rolling update worksheetPartialAPPROX/resource-calculatorSurge/unavailable rounding.
K8S-111Ownership-field reviewPartialNATIVEValidator + diffServer fields flagged; diff can ignore them explicitly.

All tools

WorkbenchValidate, explain and prepare multi-document Kubernetes YAML in your browser.Manifest editorEdit multi-document Kubernetes YAML with per-document identity, duplicate detection, a relationship graph with an accessible table, and findings tied to source lines.YAML validatorValidate Kubernetes YAML against a versioned schema pack with separate YAML, schema, cross-object and policy findings.Deployment generatorGenerate a Deployment with Service, Ingress, PodDisruptionBudget and HPA: named ports, probes, requests and a hardened security context, validated as you type.Service generatorBuild ClusterIP, NodePort, LoadBalancer, headless and ExternalName Services, and check selector and targetPort mapping against a pasted workload.Resource calculatorExact Kubernetes quantity parsing (100m vs 100Mi), unit conversion, and requests/limits totals that account for init containers, native sidecars, replicas, rollout surge and overhead.RBAC analyzerInspect Roles, ClusterRoles and bindings offline: subject-to-permission matrix, aggregated-role handling, risky verbs, and "can this subject do X" checks scoped to the supplied rules.NetworkPolicy explainerExplain which pods each NetworkPolicy isolates and test traffic scenarios between pods, namespaces and IPs with additive allow-list reasoning.Probe builderBuild liveness, readiness and startup probes and see their timing: when the first check runs, how long until a failure triggers action, and what that action is.Manifest diffCompare two Kubernetes bundles by text or by object: objects matched by identity, list items matched by name, and status or server fields ignored only when you choose.API deprecationsFind Kubernetes APIs removed or deprecated for your target version, using a dated pack, and preview field-aware migrations with the semantic changes you need to review.CronJob schedulePreview the next runs of a Kubernetes CronJob schedule in its spec.timeZone, explain concurrency and deadline settings, and catch TZ= in the schedule string.Secret encoderEncode and decode Kubernetes Secret values locally, build Secret YAML with data or stringData, and inspect an existing Secret with values masked by default.Redact exportFind Secret data, tokens, credential-bearing env values and last-applied annotations in Kubernetes YAML, review each one, and export a redacted copy.TemplatesSynthetic Kubernetes templates with safe defaults — web app, StatefulSet, CronJob, NetworkPolicy, RBAC, HPA, sidecar — each tested against the schema pack for every supported version.

Your local data

Editors autosave to IndexedDB in this browser so a reload does not lose work. The Secret encoder and the redaction tool never save. Browser storage is not a backup and not encryption.

Known limits