# Reference

> Commands and options for the StormForge CLI

---

Site [llms.txt](/llms.txt)

---

## stormforge

StormForge Command Line Interface

### Synopsis

Automated Kubernetes Workload Rightsizing.

  Find more information at: https://docs.stormforge.io/

### Options

```
      --sfconfig file   configuration file to use
  -h, --help            help for stormforge
```

### See also

* [stormforge apply](#stormforge-apply)	 - Apply one or more recommendations
* [stormforge auth](#stormforge-auth)	 - Manage non-user authorizations
* [stormforge check](#stormforge-check)	 - Validate StormForge components
* [stormforge completion](#stormforge-completion)	 - Generate the autocompletion script for the specified shell
* [stormforge config](#stormforge-config)	 - Show the CLI configuration
* [stormforge create](#stormforge-create)	 - Create a resource
* [stormforge delete](#stormforge-delete)	 - Delete a resource
* [stormforge describe](#stormforge-describe)	 - Describe a resource
* [stormforge edit](#stormforge-edit)	 - Edit a resource
* [stormforge get](#stormforge-get)	 - Fetch resources
* [stormforge login](#stormforge-login)	 - Authorize the CLI
* [stormforge logout](#stormforge-logout)	 - Revoke the CLI authorization
* [stormforge manage](#stormforge-manage)	 - Manage a resource
* [stormforge mcp](#stormforge-mcp)	 - Run an MCP server
* [stormforge patch](#stormforge-patch)	 - Deploy patches to a cluster or source files
* [stormforge ping](#stormforge-ping)	 - Connect to the StormForge server (also see 'check connect')
* [stormforge version](#stormforge-version)	 - Show the version information
* [stormforge view](#stormforge-view)	 - View pages of impact data

## stormforge apply

Apply one or more recommendations

### Synopsis

Apply initiates the deployment of recommendations.

The apply command is used to accept recommendations, marking them as ready to be
applied by the StormForge Applier.

```
stormforge apply ( NAME | FILTER_OPTIONS )
```

### Options

```
      --recommendation name   recommendation name to filter on
      --cluster name          cluster name to filter on
      --resource type         workload resource type to filter on
      --namespace namespace   workload namespace to filter on
      --name name             workload name to filter on
      --state value           state values to filter on; any of: Requested|Generated|FailedToGenerate|Ready|Applied|FailedToApply|LastApplied|Inactive|all|latest
  -l, --selector query        selector (label query) to filter on
      --force                 do not skip preliminary recommendations
  -h, --help                  help for apply
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge auth

Manage non-user authorizations

### Synopsis

Manage your StormForge authorizations.

```
stormforge auth
```

### Options

```
  -h, --help   help for auth
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge auth create](#stormforge-auth-create)	 - Create an authorization
* [stormforge auth list](#stormforge-auth-list)	 - List authorizations
* [stormforge auth revoke](#stormforge-auth-revoke)	 - Revoke authorizations

## stormforge auth create

Create an authorization

### Synopsis

Create a new StormForge authorization.

```
stormforge auth create NAME
```

### Examples

```
  # Create a values.yaml file for installing a StormForge product with Helm
  stormforge auth create my-token-name > stormforge-values.yaml

  # Create an organization wide secret with a StormForge token for GitHub Actions
  gh secret set --org myOrg STORMFORGE_TOKEN <(stormforge auth create -o token github-actions)
```

### Options

```
  -o, --output format   output format; one of: yaml|json|token (default "yaml")
  -h, --help            help for auth create
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge auth](#stormforge-auth)	 - Manage non-user authorizations

## stormforge auth list

List authorizations

### Synopsis

List StormForge authorizations.

```
stormforge auth list
```

### Options

```
  -o, --output format          output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers             don't print headers
      --template go-template   template string to use for '-o go-template'
  -h, --help                   help for auth list
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge auth](#stormforge-auth)	 - Manage non-user authorizations

## stormforge auth revoke

Revoke authorizations

### Synopsis

Revokes a StormForge authorization.

```
stormforge auth revoke AUTHORIZATION ...
```

### Options

```
  -h, --help   help for auth revoke
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge auth](#stormforge-auth)	 - Manage non-user authorizations

## stormforge check

Validate StormForge components

### Synopsis

Validates components of the StormForge system.

```
stormforge check
```

### Options

```
  -h, --help   help for check
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge check connect](#stormforge-check-connect)	 - Check server connections
* [stormforge check version](#stormforge-check-version)	 - Check the CLI version

## stormforge check connect

Check server connections

### Synopsis

Test the connection to StormForge servers.

```
stormforge check connect api|auth|in|registry|app|docs|downloads|localhost ...
```

### Examples

```
  # Check connectivity from inside a cluster
  kubectl run stormforge-check-connect --attach --rm --restart Never --quiet \
    --image registry.stormforge.io/library/stormforge-cli -- check connect
```

### Options

```
  -o, --output format          output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers             don't print headers
      --template go-template   template string to use for '-o go-template'
  -h, --help                   help for check connect
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge check](#stormforge-check)	 - Validate StormForge components

## stormforge check version

Check the CLI version

### Synopsis

Check the current CLI version.

```
stormforge check version
```

### Options

```
  -h, --help   help for check version
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge check](#stormforge-check)	 - Validate StormForge components

## stormforge completion

Generate the autocompletion script for the specified shell

### Synopsis

Generate the autocompletion script for stormforge for the specified shell.
See each sub-command's help for details on how to use the generated script.

```
stormforge completion
```

### Options

```
  -h, --help   help for completion
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge completion bash](#stormforge-completion-bash)	 - Generate the autocompletion script for bash
* [stormforge completion fish](#stormforge-completion-fish)	 - Generate the autocompletion script for fish
* [stormforge completion powershell](#stormforge-completion-powershell)	 - Generate the autocompletion script for powershell
* [stormforge completion zsh](#stormforge-completion-zsh)	 - Generate the autocompletion script for zsh

## stormforge completion bash

Generate the autocompletion script for bash

### Synopsis

Generate the autocompletion script for the bash shell.

This script depends on the 'bash-completion' package.
If it is not installed already, you can install it via your OS's package manager.

To load completions in your current shell session:

	source <(stormforge completion bash)

To load completions for every new session, execute once:

#### Linux:

	stormforge completion bash > /etc/bash_completion.d/stormforge

#### macOS:

	stormforge completion bash > $(brew --prefix)/etc/bash_completion.d/stormforge

You will need to start a new shell for this setup to take effect.

```
stormforge completion bash
```

### Options

```
      --no-descriptions   disable completion descriptions
  -h, --help              help for completion bash
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge completion](#stormforge-completion)	 - Generate the autocompletion script for the specified shell

## stormforge completion fish

Generate the autocompletion script for fish

### Synopsis

Generate the autocompletion script for the fish shell.

To load completions in your current shell session:

	stormforge completion fish | source

To load completions for every new session, execute once:

	stormforge completion fish > ~/.config/fish/completions/stormforge.fish

You will need to start a new shell for this setup to take effect.

```
stormforge completion fish
```

### Options

```
      --no-descriptions   disable completion descriptions
  -h, --help              help for completion fish
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge completion](#stormforge-completion)	 - Generate the autocompletion script for the specified shell

## stormforge completion powershell

Generate the autocompletion script for powershell

### Synopsis

Generate the autocompletion script for powershell.

To load completions in your current shell session:

	stormforge completion powershell | Out-String | Invoke-Expression

To load completions for every new session, add the output of the above command
to your powershell profile.

```
stormforge completion powershell
```

### Options

```
      --no-descriptions   disable completion descriptions
  -h, --help              help for completion powershell
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge completion](#stormforge-completion)	 - Generate the autocompletion script for the specified shell

## stormforge completion zsh

Generate the autocompletion script for zsh

### Synopsis

Generate the autocompletion script for the zsh shell.

If shell completion is not already enabled in your environment you will need
to enable it.  You can execute the following once:

	echo "autoload -U compinit; compinit" >> ~/.zshrc

To load completions in your current shell session:

	source <(stormforge completion zsh)

To load completions for every new session, execute once:

#### Linux:

	stormforge completion zsh > "${fpath[1]}/_stormforge"

#### macOS:

	stormforge completion zsh > $(brew --prefix)/share/zsh/site-functions/_stormforge

You will need to start a new shell for this setup to take effect.

```
stormforge completion zsh
```

### Options

```
      --no-descriptions   disable completion descriptions
  -h, --help              help for completion zsh
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge completion](#stormforge-completion)	 - Generate the autocompletion script for the specified shell

## stormforge config

Show the CLI configuration

### Synopsis

View StormForge CLI configuration.

The StormForge CLI loads configuration from command line flags, environment
variables, and a configuration file (in that order). The location of the file
is determined by the `--sfconfig` flag or the `STORMFORGE_CONFIG` environment
variable (collectively, "the sfconfig"). If the sfconfig DOES NOT contain a
file path separator (e.g. 'config', the default), the file is resolved relative
to the OS specific "user config" directory ('~/.config/stormforge' on Linux).
If the sfconfig DOES contain a path separator (e.g. './sfconfig'), the file is
resolved relative to current working directory.

The configuration file may contain sensitive information: for example, after
logging in using 'stormforge login' the token used to access the
StormForge API will be present in the configuration file.

```
stormforge config
```

### Options

```
      --raw                    display the raw configuration file (may contain sensitive information!)
      --redact                 redact credentials
  -o, --output format          output format; one of: yaml|json|go-template (default "yaml")
      --template go-template   template string to use for '-o go-template'
  -h, --help                   help for config
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge create

Create a resource

### Synopsis

Creates new StormForge resources.

```
stormforge create
```

### Options

```
  -h, --help   help for create
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge create recommendation](#stormforge-create-recommendation)	 - Create recommendations

## stormforge create recommendation

Create recommendations

### Synopsis

Creates a new StormForge recommendation.

```
stormforge create recommendation ( NAME | FILTER_OPTIONS )
```

### Options

```
      --cluster name               cluster name to filter on
      --resource type              workload resource type to filter on
      --namespace namespace        workload namespace to filter on
      --name name                  workload name to filter on
      --state value                state values to filter on; any of: Created|Inactive|all
  -l, --selector query             selector (label query) to filter on
      --set-label key=value        label key=value pairs to assign (default [])
      --set-annotation key=value   annotation key=value pairs to assign (default [])
      --valid-for period           the validity period for the recommendation
      --auto-deploy                automatically deploy the recommendation
      --wait                       wait for recommendations to be generated or applied (depending on auto-deploy)
      --timeout dur                duration to wait for recommendations to be applied (default 10m0s)
  -o, --output format              output format; one of: json|yaml
  -h, --help                       help for create recommendation
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge create](#stormforge-create)	 - Create a resource

## stormforge delete

Delete a resource

### Synopsis

Delete StormForge resources.

```
stormforge delete
```

### Options

```
  -h, --help   help for delete
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge delete cluster](#stormforge-delete-cluster)	 - Delete a cluster
* [stormforge delete workload](#stormforge-delete-workload)	 - Delete a workload

## stormforge delete cluster

Delete a cluster

### Synopsis

Delete a StormForge cluster.

```
stormforge delete cluster ( NAME | FILTER_OPTIONS )
```

### Options

```
      --state value      state values to filter on; any of: Created|Inactive|all
  -l, --selector query   selector (label query) to filter on
  -o, --output format    output format; name
  -h, --help             help for delete cluster
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge delete](#stormforge-delete)	 - Delete a resource

## stormforge delete workload

Delete a workload

### Synopsis

Delete a StormForge workload.

```
stormforge delete workload ( NAME | FILTER_OPTIONS )
```

### Options

```
      --cluster name          cluster name to filter on
      --resource type         workload resource type to filter on
      --namespace namespace   workload namespace to filter on
      --name name             workload name to filter on
      --state value           state values to filter on; any of: Created|Inactive|all
  -l, --selector query        selector (label query) to filter on
  -o, --output format         output format; name
  -h, --help                  help for delete workload
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge delete](#stormforge-delete)	 - Delete a resource

## stormforge describe

Describe a resource

### Synopsis

Describe one or more StormForge resources.

```
stormforge describe
```

### Options

```
  -h, --help   help for describe
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge describe cluster](#stormforge-describe-cluster)	 - Describe one or more clusters
* [stormforge describe namespace](#stormforge-describe-namespace)	 - Describe one or more namespaces
* [stormforge describe recommendation](#stormforge-describe-recommendation)	 - Describe one or more recommendations
* [stormforge describe workload](#stormforge-describe-workload)	 - Describe one or more workloads

## stormforge describe cluster

Describe one or more clusters

### Synopsis

Describes StormForge clusters.

```
stormforge describe cluster ( NAME | FILTER_OPTIONS )
```

### Options

```
      --state value            state values to filter on; any of: Created|Inactive|all
  -l, --selector query         selector (label query) to filter on
  -o, --output format          output format; one of: yaml|json|go-template
      --template go-template   template string to use for '-o go-template' (default "{{ template \"ClusterDescriptor\" . }}")
  -h, --help                   help for describe cluster
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge describe](#stormforge-describe)	 - Describe a resource

## stormforge describe namespace

Describe one or more namespaces

### Synopsis

Describes a namespace for StormForge workloads.

```
stormforge describe namespace ( NAME | FILTER_OPTIONS )
```

### Options

```
      --cluster name           cluster name to filter on
      --sort-by column         sort using column name; one of: namespace|cluster|workloads|impact
      --sort-ascending         change the sort direction
      --per-page n             number of results to show per page (max 100) (default 25)
  -o, --output format          output format; one of: yaml|json|go-template
      --template go-template   template string to use for '-o go-template' (default "{{ template \"NamespaceDescriptor\" . }}")
  -h, --help                   help for describe namespace
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge describe](#stormforge-describe)	 - Describe a resource

## stormforge describe recommendation

Describe one or more recommendations

### Synopsis

Describes StormForge recommendations.

```
stormforge describe recommendation ( NAME | FILTER_OPTIONS )
```

### Options

```
      --recommendation name    recommendation name to filter on
      --cluster name           cluster name to filter on
      --resource type          workload resource type to filter on
      --namespace namespace    workload namespace to filter on
      --name name              workload name to filter on
      --state value            state values to filter on; any of: Requested|Generated|FailedToGenerate|Ready|Applied|FailedToApply|LastApplied|Inactive|all|latest
  -l, --selector query         selector (label query) to filter on
  -o, --output format          output format; one of: yaml|json|go-template
      --template go-template   template string to use for '-o go-template' (default "{{ template \"RecommendationDescriptor\" . }}")
  -h, --help                   help for describe recommendation
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge describe](#stormforge-describe)	 - Describe a resource

## stormforge describe workload

Describe one or more workloads

### Synopsis

Describes StormForge workloads.

```
stormforge describe workload ( NAME | FILTER_OPTIONS )
```

### Options

```
      --cluster name           cluster name to filter on
      --resource type          workload resource type to filter on
      --namespace namespace    workload namespace to filter on
      --name name              workload name to filter on
      --state value            state values to filter on; any of: Created|Inactive|all
  -l, --selector query         selector (label query) to filter on
  -o, --output format          output format; one of: yaml|json|go-template
      --template go-template   template string to use for '-o go-template' (default "{{ template \"WorkloadDescriptor\" . }}")
  -h, --help                   help for describe workload
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge describe](#stormforge-describe)	 - Describe a resource

## stormforge edit

Edit a resource

### Synopsis

Edit StormForge configuration.

```
stormforge edit
```

### Options

```
  -h, --help   help for edit
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge edit cluster](#stormforge-edit-cluster)	 - Edit one or more clusters
* [stormforge edit configuration](#stormforge-edit-configuration)	 - Edit configuration
* [stormforge edit workload](#stormforge-edit-workload)	 - Edit one or more workloads

## stormforge edit cluster

Edit one or more clusters

### Synopsis

Edit configuration for a StormForge cluster.

```
stormforge edit cluster ( NAME | FILTER_OPTIONS )
```

### Options

```
      --config            edit the managed configuration (default true)
      --interactive       always open the editor before patching
      --set key1=val1     set values on the command line (for example, key1=val1,key2=val2,...)
      --type type         patch type; one of: json|strategic
      --patch patch       raw patch contents
  -f, --patch-file file   a file containing the patch to use
      --dry-run mode      dry run mode used to apply manifests; one of: none|server|client
      --force             ignore safety checks and force the update
      --reset-uid         reset the Kubernetes identifier associated with the cluster
      --state value       state values to filter on; any of: Created|Inactive|all
  -l, --selector query    selector (label query) to filter on
  -o, --output format     output format; one of: name|json|yaml
  -h, --help              help for edit cluster
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge edit](#stormforge-edit)	 - Edit a resource

## stormforge edit configuration

Edit configuration

### Synopsis

Edit configuration for a StormForge configuration.

```
stormforge edit configuration
```

### Options

```
      --config            edit the managed configuration (default true)
      --interactive       always open the editor before patching
      --set key1=val1     set values on the command line (for example, key1=val1,key2=val2,...)
      --type type         patch type; one of: json|strategic
      --patch patch       raw patch contents
  -f, --patch-file file   a file containing the patch to use
      --dry-run mode      dry run mode used to apply manifests; one of: none|server|client
      --force             ignore safety checks and force the update
  -o, --output format     output format; one of: name|json|yaml
  -h, --help              help for edit configuration
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge edit](#stormforge-edit)	 - Edit a resource

## stormforge edit workload

Edit one or more workloads

### Synopsis

Edit configuration for a StormForge workload.

```
stormforge edit workload ( NAME | FILTER_OPTIONS )
```

### Options

```
      --config                edit the managed configuration (default true)
      --interactive           always open the editor before patching
      --set key1=val1         set values on the command line (for example, key1=val1,key2=val2,...)
      --type type             patch type; one of: json|strategic
      --patch patch           raw patch contents
  -f, --patch-file file       a file containing the patch to use
      --dry-run mode          dry run mode used to apply manifests; one of: none|server|client
      --force                 ignore safety checks and force the update
      --cluster name          cluster name to filter on
      --resource type         workload resource type to filter on
      --namespace namespace   workload namespace to filter on
      --name name             workload name to filter on
      --state value           state values to filter on; any of: Created|Inactive|all
  -l, --selector query        selector (label query) to filter on
  -o, --output format         output format; one of: name|json|yaml
  -h, --help                  help for edit workload
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge edit](#stormforge-edit)	 - Edit a resource

## stormforge get

Fetch resources

### Synopsis

Display StormForge configuration.

```
stormforge get
```

### Options

```
  -h, --help   help for get
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge get clusters](#stormforge-get-clusters)	 - Get clusters
* [stormforge get configuration](#stormforge-get-configuration)	 - Get the global configuration
* [stormforge get recommendations](#stormforge-get-recommendations)	 - Get recommendations
* [stormforge get workloads](#stormforge-get-workloads)	 - Get workloads

## stormforge get clusters

Get clusters

### Synopsis

Get configuration for a StormForge clusters.

```
stormforge get clusters ( NAME | FILTER_OPTIONS )
```

### Options

```
      --state value               state values to filter on; any of: Created|Inactive|all
  -l, --selector query            selector (label query) to filter on
      --field-selector selector   field selector to perform client side filtering with, supports sort-by fields
      --sort-by column            sort using column name; one of: name|agent_version|applier_version|kubernetes_version|state|age
  -o, --output format             output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers                don't print headers
      --show-labels               when printing, show all labels as the last column
      --template go-template      template string to use for '-o go-template'
  -h, --help                      help for get clusters
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge get](#stormforge-get)	 - Fetch resources

## stormforge get configuration

Get the global configuration

### Synopsis

Get configuration for a StormForge configuration.

```
stormforge get configuration
```

### Options

```
  -o, --output format   output format; one of: json|yaml (default "json")
  -h, --help            help for get configuration
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge get](#stormforge-get)	 - Fetch resources

## stormforge get recommendations

Get recommendations

### Synopsis

Get full recommendations, including observed state and net impact.

```
stormforge get recommendations ( NAME | FILTER_OPTIONS )
```

### Options

```
      --recommendation name       recommendation name to filter on
      --cluster name              cluster name to filter on
      --resource type             workload resource type to filter on
      --namespace namespace       workload namespace to filter on
      --name name                 workload name to filter on
      --state value               state values to filter on; any of: Requested|Generated|FailedToGenerate|Ready|Applied|FailedToApply|LastApplied|Inactive|all|latest
  -l, --selector query            selector (label query) to filter on
      --field-selector selector   field selector to perform client side filtering with, supports sort-by fields
      --sort-by column            sort using column name; one of: cluster|namespace|type|name|timestamp|score|net_impact|state|status|reason
  -o, --output format             output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers                don't print headers
      --show-labels               when printing, show all labels as the last column
      --template go-template      template string to use for '-o go-template'
      --patches for[="-"]         show recommendation patches for a specific audience; one of: client-patch|pod-admission|reconciler
      --container-resources       show container level details
      --auto-scaling              show auto-scaling level details
  -h, --help                      help for get recommendations
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge get](#stormforge-get)	 - Fetch resources

## stormforge get workloads

Get workloads

### Synopsis

Get configuration for a StormForge workloads.

```
stormforge get workloads ( NAME | FILTER_OPTIONS )
```

### Options

```
      --cluster name              cluster name to filter on
      --resource type             workload resource type to filter on
      --namespace namespace       workload namespace to filter on
      --name name                 workload name to filter on
      --state value               state values to filter on; any of: Created|Inactive|all
  -l, --selector query            selector (label query) to filter on
      --field-selector selector   field selector to perform client side filtering with, supports sort-by fields
      --sort-by column            sort using column name; one of: cluster|namespace|type|name|auto_deploy|hpa_enabled|gpu_enabled|state|age
  -o, --output format             output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers                don't print headers
      --show-labels               when printing, show all labels as the last column
      --template go-template      template string to use for '-o go-template'
  -h, --help                      help for get workloads
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge get](#stormforge-get)	 - Fetch resources

## stormforge login

Authorize the CLI

### Synopsis

Log into your StormForge account.

```
stormforge login [ SERVER ]
```

### Examples

```
  # Login using your workstation's default web browser.
  stormforge login

  # If a web browser is not locally available, or if the workstation is
  # restricted from listening on port 8085, it may be necessary to perform the
  # authorization from another device. Use the "--url" flag to get a URL that
  # can be entered into a web browser manually.
  stormforge login --url

  # If you are having problems logging in, try using `stormforge check connect`
  # to troubleshoot any connection issues.
```

### Options

```
      --org id   organization identifier to use
      --url      display the URL instead of opening a browser
      --qr       display a QR code instead of opening a browser
  -h, --help     help for login
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge logout

Revoke the CLI authorization

### Synopsis

Log out of your StormForge account.

```
stormforge logout
```

### Options

```
  -h, --help   help for logout
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge manage

Manage a resource

### Synopsis

Manage the StormForge configuration.

```
stormforge manage
```

### Options

```
  -h, --help   help for manage
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge manage cluster](#stormforge-manage-cluster)	 - Manage one or more clusters
* [stormforge manage workload](#stormforge-manage-workload)	 - Manage one or more workloads

## stormforge manage cluster

Manage one or more clusters

### Synopsis

Manage the configuration of a StormForge cluster.

```
stormforge manage cluster ( NAME | FILTER_OPTIONS ) KEY=VALUE ...
```

### Options

```
      --state value         state values to filter on; any of: Created|Inactive|all
  -l, --selector query      selector (label query) to filter on
  -o, --output format       output format; one of: name|yaml|json
  -f, --filename filename   filename to load management settings from
      --dry-run mode        dry run mode used to apply manifests; one of: none|server|client
  -h, --help                help for manage cluster
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge manage](#stormforge-manage)	 - Manage a resource

## stormforge manage workload

Manage one or more workloads

### Synopsis

Manage the configuration of a StormForge workload.

```
stormforge manage workload ( NAME | FILTER_OPTIONS ) KEY=VALUE ...
```

### Options

```
      --cluster name          cluster name to filter on
      --resource type         workload resource type to filter on
      --namespace namespace   workload namespace to filter on
      --name name             workload name to filter on
      --state value           state values to filter on; any of: Created|Inactive|all
  -l, --selector query        selector (label query) to filter on
  -o, --output format         output format; one of: name|yaml|json
  -f, --filename filename     filename to load management settings from
      --dry-run mode          dry run mode used to apply manifests; one of: none|server|client
  -h, --help                  help for manage workload
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge manage](#stormforge-manage)	 - Manage a resource

## stormforge mcp

Run an MCP server

### Synopsis

Start a stdio MCP server that allows AI assistants to interact with the StormForge platform.

Please note that stdio MCP server is deprecated in favor of the HTTP MCP server.

```
stormforge mcp
```

### Options

```
      --log-level level   set the log level (default info)
  -h, --help              help for mcp
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge patch

Deploy patches to a cluster or source files

### Synopsis

Patch Kubernetes manifests using StormForge recommendations.

For each of the matching recommendations, the patch command will collect the
necessary patches and consume them in one of the following modes:

When using the `--directory` flag, the patches for the specified recommendations
are written directly to the indicated directory. The `--filename-pattern` flag
accepts placeholders like `{ClusterName}`, `{Namespace}`, and `{Kind}` to split
patches between multiple files in the directory.

When using the `--filename` flag, the patches for the specified recommendations
are applied to the manifests found in the files. The patched manifests can be
written back to disk or emitted to stdout to be processed as part of a larger
pipeline.

If neither `--directory` or `--filename` are used, each patch will be applied
by calling `kubectl patch` with the appropriate arguments.

```
stormforge patch ( NAME | FILTER_OPTIONS )
```

### Examples

```
  # Write all the recommended patches for the cluster 'my-cluster' to disk
  # NOTE: You can also view patches using `stormforge get recommendations --patches my-cluster`
  stormforge patch --directory my-cluster-patches --filename-pattern '{Namespace}_{Kind}_{Name}.json' my-cluster

  # Preview applying recommended patches for the 'default' namespace on the cluster 'my-cluster'
  stormforge patch --dry-run=server --output=yaml my-cluster/default

  # Apply the above patches
  # NOTE: This will also update the StormForge status to "Applied"
  stormforge patch my-cluster/default

  # Emit patched local manifests for 'my-cluster' and pipe them into `kubectl apply`
  stormforge patch --filename my-manifests.yaml my-cluster | kubectl apply -f -

  # Overwrite manifests for workloads named 'foobar' in 'my-cluster' found in a local directory
  # IMPORTANT: The `--in-place` flag does not create backups!
  stormforge patch --filename my-gitops-repo/ --in-place --cluster my-cluster --name foobar

  # Post render Helm output ('--filename=-' reads from stdin)
  helm template my-release charts/my-local-charts --namespace example \
    --post-renderer stormforge --post-renderer-args patch --post-renderer-args '--filename=-' \
    --post-renderer-args my-cluster/example --post-renderer-args --state=latest
```

### Options

```
      --recommendation name                     recommendation name to filter on
      --cluster name                            cluster name to filter on
      --resource type                           workload resource type to filter on
      --namespace namespace                     workload namespace to filter on
      --name name                               workload name to filter on
      --state value                             state values to filter on; any of: Generated|Ready|Applied|LastApplied|Inactive
  -l, --selector query                          selector (label query) to filter on
  -d, --directory dir                           directory to write patches to (instead of patching the cluster)
      --filename-pattern pattern                filename pattern to write patches to (default "{Kind}_{Name}.json")
  -f, --filename name                           file names of manifests to patch (instead of patching the cluster)
      --in-place                                patch file system resource in-place WITHOUT backups
      --cluster-context cluster=context         a cluster=context mapping of cluster name to kubeconfig context name to use (default [])
      --cluster-kubeconfig cluster=kubeconfig   a cluster=kubeconfig mapping of cluster name to kubeconfig file to use (default [])
      --dry-run mode                            dry run mode used to apply manifests; one of: none|server|client
      --kubeconfig file                         path to the kubeconfig file to use for CLI requests
      --context name                            the name of the kubeconfig context to use
  -o, --output format                           output format; one of: json|yaml
      --skip-apply                              do mark the recommendation as 'Applied' when patching cluster resources
  -h, --help                                    help for patch
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge ping

Connect to the StormForge server (also see 'check connect')

### Synopsis

Check basic connectivity to the StormForge cloud.

```
stormforge ping
```

### Options

```
  -h, --help   help for ping
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge version

Show the version information

### Synopsis

Display the full version information for the application.

```
stormforge version [flags]
```

### Options

```
  -h, --help                   help for version
  -o, --output format          output format
      --template go-template   template string to use for '-o go-template'
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface

## stormforge view

View pages of impact data

### Synopsis

View aggregated StormForge recommendations by impact.

```
stormforge view
```

### Options

```
  -h, --help   help for view
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge](#stormforge)	 - StormForge Command Line Interface
* [stormforge view clusters](#stormforge-view-clusters)	 - View clusters
* [stormforge view namespaces](#stormforge-view-namespaces)	 - View namespaces
* [stormforge view workloads](#stormforge-view-workloads)	 - View workloads

## stormforge view clusters

View clusters

### Synopsis

Get impact reports for a clusters.

```
stormforge view clusters [ QUERY ]
```

### Options

```
      --sort-by column         sort using column name; one of: cluster|workloads|impact
      --sort-ascending         change the sort direction
      --per-page n             number of results to show per page (max 100) (default 25)
      --page number            page number to show results from
  -o, --output format          output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers             don't print headers
      --template go-template   template string to use for '-o go-template'
  -h, --help                   help for view clusters
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge view](#stormforge-view)	 - View pages of impact data

## stormforge view namespaces

View namespaces

### Synopsis

Get impact reports for a namespaces.

```
stormforge view namespaces [ QUERY ]
```

### Options

```
      --cluster name           cluster name to filter on
      --sort-by column         sort using column name; one of: namespace|cluster|workloads|impact
      --sort-ascending         change the sort direction
      --per-page n             number of results to show per page (max 100) (default 25)
      --page number            page number to show results from
  -o, --output format          output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers             don't print headers
      --template go-template   template string to use for '-o go-template'
  -h, --help                   help for view namespaces
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge view](#stormforge-view)	 - View pages of impact data

## stormforge view workloads

View workloads

### Synopsis

Get impact reports for a workloads.

```
stormforge view workloads [ QUERY ]
```

### Options

```
      --cluster name              cluster name to filter on
      --resource type             workload resource type to filter on
      --namespace namespace       workload namespace to filter on
      --status value              status values to filter on
      --status-reason value       status reason values to filter on
  -l, --selector query            selector (label query) to filter on
      --auto-deploy               filter on workloads with auto-deploy enabled
      --hpa                       filter on workloads with auto-scaling enabled
      --gpu                       filter on workloads with GPU enabled
      --min-oom-rate rate         filter on minimum OOM rate
      --min-cpu-throttling rate   filter on minimum CPU throttling rate
      --over-provisioned          filter on over provisioned workloads
      --under-provisioned         filter on under provisioned workloads
      --runtime classification    filter on workload runtime classification; java
      --sort-by column            sort using column name; one of: name|cluster|namespace|resource|status|impact|oom-rate|cpu-throttling-rate
      --sort-ascending            change the sort direction
      --per-page n                number of results to show per page (max 100) (default 25)
      --page number               page number to show results from
  -o, --output format             output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
      --no-headers                don't print headers
      --template go-template      template string to use for '-o go-template'
      --group-by group            group results
  -h, --help                      help for view workloads
```

### Options inherited from parent commands

```
      --sfconfig file   configuration file to use
```

### See also

* [stormforge view](#stormforge-view)	 - View pages of impact data
