include::modules/serverless-document-attributes.adoc[]
[id="kn-cli-tools"]
= Knative CLI (`kn`) for use with OpenShift Serverless
:context: kn-cli-tools
include::modules/common-attributes.adoc[]

toc::[]

`kn` enables simple interaction with Knative components on {product-title}.

You can enable Knative on {product-title} by installing {ServerlessProductName}. For more information, see the documentation on xref:../serverless/serverless-getting-started.adoc#serverless-getting-started[Getting started with {ServerlessProductName}].

[NOTE]
====
{ServerlessProductName} cannot be installed using the `kn` CLI. A cluster administrator must install the {ServerlessOperatorName} and set up the Knative components, as described in the xref:../serverless/installing_serverless/installing-openshift-serverless.adoc#installing-openshift-serverless[Serverless applications] documentation for {product-title}.
====

== Key features
`kn` is designed to make serverless computing tasks simple and concise.
Key features of `kn` include:

* xref:../serverless/serving-creating-managing-apps.adoc#serving-creating-managing-apps[Deploy serverless applications] from the command line.
* Manage features of Knative Serving, such as services, revisions, and traffic-splitting.
// TODO: add docs about revisions
* Create and manage Knative Eventing components, such as event sources and triggers.
+
[NOTE]
====
Knative Eventing is currently available as a Technology Preview feature of {ServerlessProductName}.
====
* Create xref:../serverless/event_workflows/serverless-sinkbinding.adoc#serverless-sinkbinding[sink binding] to connect existing Kubernetes applications and Knative services.
* Extend `kn` with flexible plugin architecture, similar to `kubectl`.
// * Easily integrate {ServerlessProductName} with OpenShift Pipelines by using `kn` in an OpenShift Pipelines task
// TODO: Add integrations later when we have docs about this.
// TODO: add docs about these deployment types?
* Configure xref:../serverless/knative_serving/configuring-knative-serving-autoscaling.adoc#configuring-knative-serving-autoscaling[autoscaling] parameters for Knative services.
* Scripted usage, such as waiting for the results of an operation, or deploying custom rollout and rollback strategies.

== Installing `kn`

For information about installing `kn` for use with {ServerlessProductName}, see the documentation on xref:../serverless/installing_serverless/installing-kn.adoc#installing-kn[Installing the Knative CLI (`kn`)].
