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

# Prompts

> Create, version, test, and reuse prompts with template variables, tools, and model parameters.

## Overview

The **Prompts** screen allows you to manage reusable prompt templates that can be invoked consistently across applications, agents, and workflows. Prompts support **template variables**, **model parameters**, **tools**, and **inline testing**, making them suitable for both experimentation and production use.

Prompts help standardize interaction patterns and reduce duplication across teams.

***

## Prompts List

The main Prompts page lists all prompts in the selected tenant.

### Primary Actions

* **Add New Prompt**\
  Create a prompt using the visual editor.
* **Upload `.prompt` File**\
  Import an existing prompt definition from a file.

***

### Prompts Table

Each row represents a saved prompt and typically includes:

* **Prompt ID**\
  Unique identifier for the prompt.
* **Model**\
  Default model associated with the prompt.
* **Created At**\
  Timestamp of initial creation.
* **Updated At**\
  Timestamp of the most recent update.
* **Type**\
  Prompt format or source (for example, UI-created or uploaded).
* **Actions**\
  Edit, view, or manage the prompt.

## Sorting and pagination controls are available when multiple prompts exist.

## Upload Prompt (.prompt File)

You can create a prompt by uploading an existing `.prompt` file that follows the **Dotprompt specification**. This is useful for version‑controlled prompts or prompts created outside the UI.

### How to Upload

1. Navigate to **Prompts**.
2. Select **Upload `.prompt` File**.
3. Complete the upload form and create the prompt.

### Upload Fields

#### Prompt ID

A unique identifier for the prompt.

* Must be unique within the tenant
* Used to invoke the prompt via API and generated code

#### Prompt Integration

Select the format of the uploaded file.

* **dotprompt**\
  Indicates the file conforms to the Dotprompt specification.

#### Prompt File

Upload the `.prompt` file from your local system.

**Requirements**

* File extension must be `.prompt`
* Must follow the Dotprompt schema
* Defines messages, variables, and structure

### Create Prompt

* **Create Prompt**\
  Validates the file and registers the prompt.
* **Cancel**\
  Closes the dialog without saving.

After upload, the prompt:

* Appears in the Prompts list
* Can be opened in the prompt editor
* Can be tested with template variables
* Can be referenced by Prompt ID in APIs

### Best Practices

* Keep Prompt IDs stable for long‑lived integrations
* Store `.prompt` files in source control
* Use file upload for shared or CI‑managed prompts
* Validate prompt files before uploading

***

## Create / Edit Prompt

Selecting **Add New Prompt** or editing an existing prompt opens the prompt editor.

***

## Prompt Header

### Model Selector

Select the default model that will be used when this prompt is executed.

### Parameters

Select **Parameters** to configure model-specific settings such as:

* Temperature
* Max tokens

These parameters apply whenever the prompt is invoked unless overridden programmatically.

***

## Prompt Editor (Left Panel)

### Tools

Attach tools that the prompt can use when executed.

* Select **Add** to attach available tools
* Tool availability depends on access and configuration

***

### Developer Message

Optional system-level instructions that guide model behavior.

**Typical uses**

* Set tone or persona
* Include safety or formatting instructions
* Define high-level constraints

***

### Prompt Messages

Prompt messages define the main prompt content.

* Messages are role-based (for example, User)
* Supports **template variables** using `{{variable_name}}` syntax
* Multiple messages can be added using **Add message**

Detected variables are automatically surfaced for testing.

***

## Template Variables & Testing (Right Panel)

### Template Variables

Any variables used in the prompt must be populated before testing.

* Enter values for each detected variable
* Missing values are highlighted and block execution

***

### Testing Area

After all variables are filled:

* Enter a test message
* Execute the prompt
* View the model response inline

This enables rapid iteration without leaving the editor.

***

## Validation & Warnings

If required template variables are missing, a warning banner is shown indicating which variables must be filled before testing can proceed.

***

## Generated Code

Select **Get Code** to generate ready-to-use API calls for the prompt.

### Supported Options

* Language selection (for example, cURL)
* Variants such as:
  * Basic
  * With messages
  * With version

The generated code includes:

* Prompt ID reference
* Model selection
* Template variable payload
* Authentication header placeholders

Use this to move from prompt design to application integration quickly.

***

## Save Prompt

### Save

Persists the prompt definition, including:

* Messages
* Variables
* Tools
* Parameters

### Draft State

Unsaved changes are indicated until the prompt is saved.

***

## Common Use Cases

* Create reusable prompt templates for applications
* Standardize instructions across teams
* Inject dynamic inputs using template variables
* Test prompt behavior before production use
* Generate consistent API calls for developers

***

## Best Practices

* Use clear, descriptive variable names
* Keep developer messages concise and explicit
* Test with multiple variable values
* Save prompts regularly to avoid losing changes
* Version prompts intentionally when behavior changes
* Prefer prompts over inline text for shared workflows

***

## Related Sections

* **Playground** – Ad-hoc model testing
* **Agents** – Reference prompts within agent workflows
* **Models** – Manage available models
* **Virtual Keys** – Control access and limits
* **Usage & Logs** – Monitor prompt invocation
