# Kosli Documentation ## Docs - [Managing Environments](https://kosli-29-automate-helm-reference-updates.mintlify.app/administration/managing_environments/overview.md): Learn how to manage Kosli environments via Terraform, including creating and importing physical and logical environments. - [Roles in Kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/administration/managing_users/roles_in_kosli.md): Understand the different user roles in Kosli and their permissions to manage access within your organization. - [List environments](https://kosli-29-automate-helm-reference-updates.mintlify.app/api-reference/endpoint/list_environments.md) - [Put environments](https://kosli-29-automate-helm-reference-updates.mintlify.app/api-reference/endpoint/put_environment.md) - [Changelog](https://kosli-29-automate-helm-reference-updates.mintlify.app/changelog/index.md): Release notes for Kosli products. - [kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli.md): The Kosli CLI. - [kosli allow artifact](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_allow_artifact.md): Add an artifact to an environment's allowlist. - [kosli archive attestation-type](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_archive_attestation-type.md): Archive a custom Kosli attestation type. - [kosli archive environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_archive_environment.md): Archive a Kosli environment. - [kosli archive flow](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_archive_flow.md): Archive a Kosli flow. - [kosli assert approval](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_approval.md): Assert an artifact in Kosli has been approved for deployment. - [kosli assert artifact](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_artifact.md): Assert the compliance status of an artifact in Kosli. There are four (mutually exclusive) ways to use `kosli assert artifact`: 1. Against an environment. When `--environment` is specified, assert... - [kosli assert pullrequest azure](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_pullrequest_azure.md): Assert an Azure DevOps pull request for a git commit exists. - [kosli assert pullrequest bitbucket](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_pullrequest_bitbucket.md): Assert a Bitbucket pull request for a git commit exists. - [kosli assert pullrequest github](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_pullrequest_github.md): Assert a Github pull request for a git commit exists. - [kosli assert pullrequest gitlab](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_pullrequest_gitlab.md): Assert a Gitlab merge request for a git commit exists. - [kosli assert snapshot](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_snapshot.md): Assert the compliance status of an environment in Kosli. - [kosli assert status](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_assert_status.md): Assert the status of a Kosli server. - [kosli attach-policy](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attach-policy.md): Attach a policy to one or more Kosli environments. - [kosli attest artifact](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_artifact.md): Attest an artifact creation to a Kosli flow. - [kosli attest custom](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_custom.md): Report a custom attestation to an artifact or a trail in a Kosli flow. - [kosli attest generic](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_generic.md): Report a generic attestation to an artifact or a trail in a Kosli flow. - [kosli attest jira](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_jira.md): Report a jira attestation to an artifact or a trail in a Kosli flow. - [kosli attest junit](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_junit.md): Report a junit attestation to an artifact or a trail in a Kosli flow. JUnit xml files are read from the `--results-dir` directory which defaults to the current directory. The xml files are automati... - [kosli attest pullrequest azure](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_pullrequest_azure.md): Report an Azure Devops pull request attestation to an artifact or a trail in a Kosli flow. - [kosli attest pullrequest bitbucket](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_pullrequest_bitbucket.md): Report a Bitbucket pull request attestation to an artifact or a trail in a Kosli flow. - [kosli attest pullrequest github](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_pullrequest_github.md): Report a Github pull request attestation to an artifact or a trail in a Kosli flow. - [kosli attest pullrequest gitlab](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_pullrequest_gitlab.md): Report a Gitlab merge request attestation to an artifact or a trail in a Kosli flow. - [kosli attest snyk](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_snyk.md): Report a snyk attestation to an artifact or a trail in a Kosli flow. - [kosli attest sonar](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_attest_sonar.md): Report a SonarQube attestation to an artifact or a trail in a Kosli flow. - [kosli begin trail](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_begin_trail.md): Begin or update a Kosli flow trail. - [kosli completion](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_completion.md): Generate completion script - [kosli config](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_config.md): Config global Kosli flags values and store them in $HOME/.kosli . - [kosli create attestation-type](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_create_attestation-type.md): Create or update a Kosli custom attestation type. - [kosli create environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_create_environment.md): Create or update a Kosli environment. - [kosli create flow](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_create_flow.md): Create or update a Kosli flow. - [kosli create policy](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_create_policy.md): Create or update a Kosli policy. - [kosli detach-policy](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_detach-policy.md): Detach a policy from one or more Kosli environments. - [kosli diff snapshots](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_diff_snapshots.md): Diff environment snapshots. - [kosli disable beta](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_disable_beta.md): Disable beta features for an organization. - [kosli enable beta](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_enable_beta.md): Enable beta features for an organization. - [kosli evaluate trail](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_evaluate_trail.md): Evaluate a trail against a policy. - [kosli evaluate trails](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_evaluate_trails.md): Evaluate multiple trails against a policy. - [kosli expect deployment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_expect_deployment.md): Report the expectation of an upcoming deployment of an artifact to an environment. - [kosli fingerprint](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_fingerprint.md): Calculate the SHA256 fingerprint of an artifact. - [kosli get approval](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_approval.md): Get an approval from a specified flow. - [kosli get artifact](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_artifact.md): Get artifact from a specified flow - [kosli get attestation](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_attestation.md): Get an attestation using its name or id. - [kosli get attestation-type](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_attestation-type.md): Get a custom Kosli attestation type. - [kosli get deployment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_deployment.md): Get a deployment from a specified flow. - [kosli get environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_environment.md): Get an environment's metadata. - [kosli get flow](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_flow.md): Get the metadata of a specific flow. - [kosli get policy](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_policy.md): Get a policy's metadata. - [kosli get snapshot](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_snapshot.md): Get a specified environment snapshot. - [kosli get trail](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_get_trail.md): Get the metadata of a specific trail. - [kosli join environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_join_environment.md): Join a physical environment to a logical environment. - [kosli list approvals](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_approvals.md): List approvals in a flow. - [kosli list artifacts](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_artifacts.md): List artifacts in a flow or repo. - [kosli list attestation-types](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_attestation-types.md): List all Kosli attestation types for an org. - [kosli list deployments](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_deployments.md): List deployments in a flow. - [kosli list environments](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_environments.md): List environments for an org. - [kosli list flows](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_flows.md): List flows for an org. - [kosli list policies](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_policies.md): List environment policies for an org. - [kosli list snapshots](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_snapshots.md): List environment snapshots. - [kosli list trails](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_list_trails.md): List Trails of an org. - [kosli log environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_log_environment.md): List environment events. - [kosli rename environment](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_rename_environment.md): Rename a Kosli environment. - [kosli rename flow](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_rename_flow.md): Rename a Kosli flow. - [kosli report approval](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_report_approval.md): Report an approval of deploying an artifact to an environment to Kosli. - [kosli report artifact](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_report_artifact.md): Report an artifact creation to a Kosli flow. - [kosli request approval](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_request_approval.md): Request an approval of a deployment of an artifact to an environment in Kosli. - [kosli search](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_search.md): Search for a git commit or an artifact fingerprint in Kosli. - [kosli snapshot azure](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_azure.md): Report a snapshot of running Azure web apps and function apps in an Azure resource group to Kosli. - [kosli snapshot docker](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_docker.md): Report a snapshot of running containers from docker host to Kosli. - [kosli snapshot ecs](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_ecs.md): Report a snapshot of running containers in one or more AWS ECS cluster(s) to Kosli. - [kosli snapshot k8s](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_k8s.md): Report a snapshot of running pods in a K8S cluster or namespace(s) to Kosli. - [kosli snapshot lambda](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_lambda.md): Report a snapshot of artifacts deployed as one or more AWS Lambda functions and their digests to Kosli. - [kosli snapshot path](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_path.md): Report a snapshot of a single artifact running in a specific filesystem path to Kosli. - [kosli snapshot paths](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_paths.md): Report a snapshot of artifacts running in specific filesystem paths to Kosli. - [kosli snapshot s3](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_s3.md): Report a snapshot of the content of an AWS S3 bucket to Kosli. - [kosli snapshot server](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_snapshot_server.md): Report a snapshot of artifacts running in a server environment to Kosli. - [kosli status](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_status.md): Check the status of a Kosli server. - [kosli tag](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_tag.md): Tag a resource in Kosli with key-value pairs. - [kosli version](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/kosli_version.md): Print the version of a Kosli CLI. - [CLI Reference](https://kosli-29-automate-helm-reference-updates.mintlify.app/client_reference/overview.md): Reference documentation for the Kosli CLI. - [Approvals](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/approvals.md): Learn about approvals in Kosli - [Artifacts](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/artifacts.md): Learn how to attest artifacts to Kosli and establish binary provenance. - [Attestations](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/attestations.md): Learn how to make attestations to Kosli to prove compliance in your software supply chain. - [Environments](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/environments.md): Learn how to create and manage Kosli environments to track your runtime artifacts. - [Flows](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/flows.md): Learn about Kosli Flows, how to create and manage them. - [Install Kosli CLI](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/install.md): Instructions to install Kosli CLI on various platforms - [Environment Policies](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/policies.md): Define and enforce compliance requirements for artifact deployments across different environments. - [Service Accounts](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/service-accounts.md): Learn how to create and manage Kosli Service Accounts and API keys. - [Trails](https://kosli-29-automate-helm-reference-updates.mintlify.app/getting_started/trails.md): Learn about Kosli Trails, how to create and manage them. - [Application Developers](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_1/roles_and_responsibilities/app_developers.md): Role guide for Application Developers using Kosli - [Overview](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_1/roles_and_responsibilities/overview.md): Define roles and responsibilities for Kosli implementation - [Platform Engineers](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_1/roles_and_responsibilities/platform_engineers.md): Role guide for Platform and DevOps Engineers using Kosli - [Security and Compliance](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_1/roles_and_responsibilities/security_compliance.md): How security and compliance teams use Kosli to enforce controls and prepare for audits. - [Sponsors](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_1/roles_and_responsibilities/sponsors.md): How Sponsors can use Kosli to drive safe and compliant software delivery at speed. - [Attestation Types](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_2/plan_organizational_structure/naming_conventions/attestation_types.md): Naming convention guidance for custom attestation types following the control-objective, evidence-type, detail, and version pattern. - [Flows and Trails](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_2/plan_organizational_structure/naming_conventions/flows_and_trails.md): Recommended naming conventions for Flows and Trails in Kosli. - [Overview](https://kosli-29-automate-helm-reference-updates.mintlify.app/implementation_guide/phase_2/plan_organizational_structure/naming_conventions/overview.md): Best practices for naming Flows, Attestation Types, and Environments in Kosli. - [Actions](https://kosli-29-automate-helm-reference-updates.mintlify.app/integrations/actions.md): Automate if-this-then-that workflows with Kosli Actions. - [CI/CD](https://kosli-29-automate-helm-reference-updates.mintlify.app/integrations/ci_cd.md): Use Kosli in CI Systems like GitHub Actions, GitLab CI, and more. - [LaunchDarkly](https://kosli-29-automate-helm-reference-updates.mintlify.app/integrations/launchdarkly.md): LaunchDarkly feature flag changes can be tracked in Kosli trails. - [Slack](https://kosli-29-automate-helm-reference-updates.mintlify.app/integrations/slack.md): Integrate Kosli with Slack using the Kosli Slack App to receive notifications and query your environments and artifacts directly from Slack. - [Sonar](https://kosli-29-automate-helm-reference-updates.mintlify.app/integrations/sonar.md): The results of SonarQube Server and SonarQube Cloud scans can be tracked in Kosli trails. This integration involves setting up a Sonar webhook in Kosli and a corresponding webhook in SonarQube. - [What do I do if Kosli is down?](https://kosli-29-automate-helm-reference-updates.mintlify.app/troubleshooting/what_do_i_do_if_kosli_is_down.md): This page shows you how to bypass Kosli attestations if Kosli is down so your CI pipelines keep running, and how to re-enable them when it recovers. - [Attesting Snyk scans](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/attest_snyk.md): In this tutorial, we will see how you can run and attest different types of Snyk scans to Kosli. We will run the scans on the Kosli CLI git repo - [Using Kosli CLI with an HTTP proxy](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/cli_and_http_proxy.md): This tutorial shows you how to set up an HTTP proxy and configure the Kosli CLI to route all traffic through it. - [Creating custom CTRF attestation type](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/custom-attestation-ctrf.md): In this tutorial, we will create a custom attestation type with schema and evaluation for Common Test Report Format - [From commit to production](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/following_a_git_commit_to_runtime_environments.md): In this 5 minute tutorial you'll learn how Kosli tracks "life after git" and shows you events from CI pipelines (eg, building the docker image, running the unit tests, deploying, etc) and runtime environments (eg, the blue-green rollover, instance scaling, etc) - [Get familiar with Kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/get_familiar_with_Kosli.md): The following guide is the easiest and quickest way to try Kosli out and understand its features. It is made to run from your local machine, but the same concepts and steps apply to using Kosli in a production setup. - [Querying Kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/querying_kosli.md): This tutorial shows you how to use Kosli's query commands to search for artifacts, inspect their history, and browse runtime environment snapshots. - [Report AWS environments to Kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/report_aws_envs.md): Learn how to report running artifacts from ECS, Lambda, and S3 environments to Kosli — using the CLI for a quick test or a Terraform module for production. - [Report Kubernetes environments to Kosli](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/report_k8s_envs.md): Learn how to report running artifacts from a Kubernetes cluster to Kosli — using a Helm chart for production, the CLI for a quick test, or an externally scheduled cron job. - [Tracing a production incident to its git commit](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/tracing_a_production_incident_back_to_git_commits.md): Learn how to use Kosli to trace a production 500 error in cyber-dojo back to the specific git commit that caused it — without any access to the production environment. - [Detecting unauthorized Terraform changes](https://kosli-29-automate-helm-reference-updates.mintlify.app/tutorials/unauthorized_iac_changes.md): Learn how to use Kosli to detect unauthorized Terraform infrastructure changes — changes made outside your approved CI process. - [Concepts](https://kosli-29-automate-helm-reference-updates.mintlify.app/understand_kosli/concepts.md): Understand the main concepts behind Kosli - [What is Kosli?](https://kosli-29-automate-helm-reference-updates.mintlify.app/understand_kosli/what_is_kosli.md): Learn about Kosli, its purpose, use cases, and how it fits into the tools landscape. ## OpenAPI Specs - [openapi](https://kosli-29-automate-helm-reference-updates.mintlify.app/api-reference/openapi.json)