Kyverno API is a Go library that provides Kubernetes Custom Resource Definition types and API definitions for Kyverno CEL-based policies.
The project solves the problem of API type reusability by decoupling Kyverno's CRD definitions from its controller implementation. Developers building custom controllers, CLI tools, or plugins that need to work with Kyverno policies can import these types directly without taking on the full Kyverno controller codebase and its dependency tree. This separation of concerns allows for lighter-weight integrations and reduces build complexity for downstream projects.
Teams should adopt this library when building tooling that interacts with Kyverno policies but does not need to run the full Kyverno controller. It suits projects that need to programmatically read, validate, or manipulate Kyverno policy objects within a Go application. The library is particularly valuable for developers creating custom operators, policy analysis tools, or CLI utilities that operate on Kyverno resources.
The project maintains active engagement with its community through a dedicated contributing guide and maintains communication channels for users. Development activity shows consistent attention to the codebase with regular updates and responsiveness to integration needs from downstream projects.