> ## Documentation Index
> Fetch the complete documentation index at: https://keel-cloud.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Manifest

> The manifest block on a variable, the structure of the generated document, and the CLI and UI options for producing it.

## The `manifest` block

```yaml theme={null}
AWS_ACCESS_KEY_ID:
  label: AWS Access Key ID
  secret: true
  manifest:
    include: true
    title: AWS access key
    why: Authenticates the deployment with your AWS account.
    how: |
      **IAM → Users → Add user**, enable *programmatic access*, attach the
      `keel-deploy` policy, copy the access key ID.
```

**include** `boolean` (default: true when the block is present)

Whether the variable is in the default selection. A variable without a
`manifest` block is excluded by default; `include: false` excludes one
that has a block.

**title** `string` (default: the label)

Heading of the variable's entry.

**why** `string (Markdown)`

Why the value is needed.

**how** `string (Markdown)`

How to obtain it.

## The generated document

Markdown, in this order:

1. **Title** — *Required values — \<project>*, then the deployment name,
   the target name when generated from a target, the generation date, and
   *Prepared by* when known.
2. The deployment's `description`.
3. A sentence stating how many values are needed and that sensitive values
   must be shared securely.
4. A **summary table**: number, label, type, sensitive, required.
5. One **section per variable**, in selection order: title; a metadata line
   (type, *Sensitive — share securely*, *Optional*, default, *Provided each
   time a deploy starts*, *Only applies when …*); description; **Why it is
   needed**; **How to get it**; **Allowed values** for selects; **Format**
   for validation constraints in plain language.
6. A footer noting the document was generated by Keel.

The HTML format wraps the same content in a standalone page that renders
without any tooling.

## Generating

### UI

**Export variable manifest** on a deployment page or a target page opens the
builder: a checkbox per variable (default selection pre-checked), a live
preview, and **Download Markdown** / **Download HTML**. The project name is
the repository (Keel Dev) or *organization / repository* (Keel Cloud); Keel
Cloud also fills *Prepared by* with the signed-in user's name.

### CLI

```console theme={null}
$ keel manifest <deployment> [-o file] [-f md|html] [--var NAME]... [--project NAME]
```

| Flag | Default | Description |
| - | - | - |
| `-o`, `--out` | stdout | Output file. `-` also means stdout. |
| `-f`, `--format` | `md` | `md` or `html`. |
| `--var` | the default selection | Variable to include; repeatable. Given any `--var`, only those are included, in declaration order. |
| `--project` | the directory name | Project name in the header. |

Selecting a variable that does not exist, or ending up with an empty
selection, is an error.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.