> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coralos.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# i16 option type

export const name_0 = "16-bit signed integer"

export const minValue_0 = "-32,768"

export const maxValue_0 = "32,767"

export const exampleValue_0 = "-15894"

export const exampleBinaryValue_0 = "0xA76C"

A {name_0}.  Integers should use the [environment transport](#environment-transport)
as they are never large enough to use the [filesystem transport](#filesystem-transport).

{name_0}s have a minimum value of **{minValue_0}** and a maximum value of **{maxValue_0}**.  This range must be respected in
values given for this option and values specified as defaults or for validation.

| Option value     | `transport = "fs"`                  | `transport = "env"`           |
| ---------------- | ----------------------------------- | ----------------------------- |
| {exampleValue_0} | <code>{exampleBinaryValue_0}</code> | <code>{exampleValue_0}</code> |
|                  | (binary, big-endian)                | (utf8)                        |

## Full example

<Tabs>
  <Tab title="Single">
    ```toml theme={null}
    [options.EXAMPLE_I16_OPTION]
    type = "i16"
    required = false
    default = 500

    display.label = "Example i16 Option"
    display.description = "This is an example i16 option."
    display.group = "Example Group"

    # If variants are defined, min/max should not be defined
    # validation.variants = [0, 250, 500, 750, 1000]

    validation.min = 0
    validation.max = 1000
    ```
  </Tab>

  <Tab title="List">
    ```toml theme={null}
    [options.EXAMPLE_I16_OPTION]
    type = "list[i16]"
    required = false
    default = [0, 500, 1000]

    display.label = "Example i16 List Option"
    display.description = "This is an example i16 list option."
    display.group = "Example Group"

    # If variants are defined, min/max should not be defined
    # validation.variants = [0, 250, 500, 750, 1000]

    validation.min = 0
    validation.max = 1000
    ```
  </Tab>
</Tabs>

## option.type

<Badge color="red">required</Badge>

<Tabs>
  <Tab title="Single">
    ```toml theme={null}
    type = "i16"
    ```
  </Tab>

  <Tab title="List">
    ```toml theme={null}
    type = "list[i16]"
    ```
  </Tab>
</Tabs>

## option.default

<Badge color="blue">optional</Badge>

<Tabs>
  <Tab title="Single">
    An [integer](https://toml.io/en/v1.1.0#integer) specifying the default value for this option.  If this is
    specified, setting `required = true` will have no effect.

    ```toml theme={null}
    default = 1000
    ```
  </Tab>

  <Tab title="List">
    An [array](https://toml.io/en/v1.1.0#array) of [integers](https://toml.io/en/v1.1.0#integer) specifying the
    default values for this option.  If this is specified, setting `required = true` will have no effect.

    ```toml theme={null}
    default = [1000, 2000, 3000]
    ```
  </Tab>
</Tabs>

## option.required

<Badge color="blue">default </Badge> `false` <br />
<Badge color="blue">optional</Badge>

If `required = true` this option is **not** optional and must be specified.  Setting `required = true` for an option
that has a default value has no effect.

```toml theme={null}
required = true
```

## option.validation

The server performs option validation before running an agent.  The Coral server will never launch an agent with option
values that do not pass the validation rules given for an option.

The absence of a validation rule indicates that the absent validation rule should not be performed.  No validation rules
have default values.

For list types, validation will be performed on each item on the list.  A single invalid item will reject the entire list.

### option.validation.variants

<Badge color="blue">optional</Badge>

An [array](https://toml.io/en/v1.1.0#array) of [integers](https://toml.io/en/v1.1.0#integer) that specify valid
values for this option.  If `variants` is specified, the value for this option must be one of the entries in `variants`.
This is usually used to construct an enum.

```toml theme={null}
validation.variants = [1, 2, 3]
```

### option.validation.min

<Badge color="blue">optional</Badge>

An [integer](https://toml.io/en/v1.1.0#integer) specifying the minimum allowed value for this option.

```toml theme={null}
validation.min = 0
```

### option.validation.max

<Badge color="blue">optional</Badge>

An [integer](https://toml.io/en/v1.1.0#integer) specifying the maximum allowed value for this option.

```toml theme={null}
validation.max = 100
```

## option.transport

<Badge color="blue">default </Badge> `env` <br />
<Badge color="blue">optional</Badge>

Controls how the option value is sent to the agent.

### Environment transport

```toml theme={null}
transport = "env"
```

The environment transport will *send* the option value to the agent via an environment variable.  The name of the
environment variable will match the option name, and the value will be encoded in UTF-8.

For lists, multiple values will be sent delimited by a comma `,`.  It is recommended to use `option.base64 = true` when
there is a chance the value will contain a comma.

### Filesystem transport

```toml theme={null}
transport = "fs"
```

The filesystem transport will *send* the option value to the agent via a file.  An environment variable matching the name
of this option will be *sent* to the agent, the value of the environment variable will be the path to the file that
contains the value for the option.

For lists, multiple files will be created.  A list of paths will be provided in the environment variable, delimited by
either:

* `;` on Windows
* `:` on Unix-like operating systems

## option.display

Display options are used to configure how the option should render in the Coral console.  They may also be used in other
third-party interfaces.

### option.display.label

<Badge color="blue">optional</Badge>

A [string literal](https://toml.io/en/v1.1.0#string) specifying the label for this option.  Coral console will display this label instead of the
option's name if it is specified.

```toml theme={null}
display.label = "My option"
```

### option.display.description

<Badge color="blue">optional</Badge>

A [string literal](https://toml.io/en/v1.1.0#string) specifying a description for this option.  The description will
appear as a tooltip for this option in the Coral console.

```toml theme={null}
display.description = "My option is used for ..."
```

### option.display.group

<Badge color="blue">optional</Badge>

A [string literal](https://toml.io/en/v1.1.0#string) specifying the group that this option belongs to.  Options with the same group will appear
grouped in the Coral console.

```toml theme={null}
display.group = "Prompts"
```
