Skip to content

Kuzco reviews your Terraform resources, compares them to the provider schema to detect unused parameters, and uses AI to suggest improvements

License

Notifications You must be signed in to change notification settings

RoseSecurity/Kuzco

Repository files navigation

Kuzco

Enhance your Terraform configurations with intelligent analysis powered by local LLMs

Introduction

Here's the problem: You spin up a Terraform resource, pull a basic configuration from the registry, and start wondering what other parameters should be enabled to make it more secure and efficient. Sure, you could use tools like TLint or TFSec, but kuzco saves you time by avoiding the need to dig through the Terraform registry and decipher unclear options. It leverages local LLMs to recommend what should be enabled and configured. Simply put, kuzco reviews your Terraform resources, compares them to the provider schema to detect unused parameters, and uses AI to suggest improvements for a more secure, reliable, and optimized setup.

Demo

Installation

Note

To use kuzco, Ollama must be installed. You can do this by running brew bundle install or brew install ollama

Go

If you have a functional Go environment, you can install with:

go install github.com/RoseSecurity/kuzco@latest

Apt

To install packages, you can quickly setup the repository automatically:

curl -1sLf \
  'https://dl.cloudsmith.io/public/rosesecurity/kuzco/setup.deb.sh' \
  | sudo -E bash

Once the repository is configured, you can install with:

apt install kuzco=<VERSION>

Source

git clone git@github.com:RoseSecurity/Kuzco.git
cd Kuzco
make build

Usage

The following configuration options are available:

❯ kuzco
  _  __
 | |/ /  _   _   ____   ___    ___
 | ' /  | | | | |_  /  / __|  / _ \
 | . \  | |_| |  / /  | (__  | (_) |
 |_|\_\  \__,_| /___|  \___|  \___/


Intelligently analyze your Terraform configurations to receive personalized recommendations for boosting efficiency, security, and performance.

Usage:
  kuzco [flags]
  kuzco [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  version     Print the CLI version

Flags:
  -a, --address string   IP Address and port to use for the LLM model (ex: http://localhost:11434) (default "http://localhost:11434")
  -f, --file string      Path to the Terraform file (required)
  -h, --help             help for kuzco
  -m, --model string     LLM model to use for generating recommendations (default "llama3.1")

Use "kuzco [command] --help" for more information about a command.

About

Kuzco reviews your Terraform resources, compares them to the provider schema to detect unused parameters, and uses AI to suggest improvements

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published