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

# Overview

> Systematically manage, version, and deploy LLM prompts without code changes

LLM applications require constant prompt iteration. Without prompt management, each change demands code deployment, testing, and release cycles—slowing iteration and increasing risk.

# How Prompt Management Works

ABV prompt management follows a create-version-deploy-monitor workflow:

<Steps>
  <Step title="Create and edit prompts" icon="pen">
    Create prompts through the ABV UI, SDKs (Python/JavaScript), or Public API. Prompts support variable substitution (`{{variable}}`), custom configuration (model parameters, tools, metadata), and two formats: text prompts (single string) and chat prompts (array of messages).
  </Step>

  <Step title="Automatic versioning" icon="list-ol">
    Each prompt update creates a new immutable version (1, 2, 3...). View version diffs to see exactly what changed between versions.
  </Step>

  <Step title="Label-based deployment" icon="tag">
    Labels act as pointers to specific versions. Deploy by assigning the `production` label. Test with `staging`. Roll back by reassigning `production` to a previous version—no code deployment required. Create custom labels for tenants, A/B tests, or any deployment strategy.
  </Step>

  <Step title="Client-side caching for zero latency" icon="server">
    ABV SDKs cache prompts locally with automatic background refresh. Your application fetches from cache (zero network latency) while background processes check for updates.
  </Step>

  <Step title="Link prompts to traces for metrics" icon="chart-line">
    Connect prompts to observability traces to track which version generated each response. Analyze performance metrics (latency, token usage, costs, evaluation scores) broken down by prompt version.
  </Step>
</Steps>

# Why Prompt Management?

<AccordionGroup>
  <Accordion title="Faster Iteration Cycles" icon="forward-fast">
    Product managers and domain experts iterate on prompts directly in the ABV UI. Update prompts, test in playground, deploy to staging, and promote to production—all without engineering involvement. Reduce iteration cycles from days to minutes.
  </Accordion>

  <Accordion title="Safe Production Changes with Instant Rollback" icon="shield-check">
    Version control with labels enables instant rollback. Assign `production` to a version, observe metrics, and reassign to a previous version if issues arise—rollback completes in seconds without code changes.
  </Accordion>

  <Accordion title="Environment Separation" icon="layer-group">
    Use labels to maintain different versions per environment. The same prompt has `staging` pointing to latest version (under test) and `production` pointing to previous version (stable). Create tenant-specific labels for multi-tenant deployments.
  </Accordion>

  <Accordion title="Team Collaboration" icon="users">
    Domain experts iterate on prompts in the ABV UI without writing code. Engineers review changes, test systematically, and deploy by assigning labels. Both teams work with the same prompts in the same platform.
  </Accordion>

  <Accordion title="Audit Trail and Change History" icon="clock-rotate-left">
    ABV maintains complete prompt history with version diffs, timestamps, and change attribution. See exactly what changed between versions and track performance differences through linked observability data.
  </Accordion>

  <Accordion title="A/B Testing and Experimentation" icon="flask">
    Create multiple labels pointing to different prompt versions. Select another label in your application, fetch the corresponding prompt, and link it to the observability trace. ABV metrics show performance by prompt version.

    [Learn more about A/B testing →](/developer/prompt-management/ab-testing-llm-prompts)
  </Accordion>
</AccordionGroup>

# Key Features

## Core Prompt Management

<AccordionGroup>
  <Accordion title="Version Control and Rollback" icon="code-branch">
    Every prompt change creates an immutable new version. View version diffs, compare side-by-side, and roll back to any previous version by reassigning labels.

    [Learn more about version control →](/developer/prompt-management/version-control)
  </Accordion>

  <Accordion title="Label-Based Deployment" icon="tags">
    Labels act as pointers to specific versions. Built-in labels: `production` (default) and `latest` (most recent). Create custom labels (`staging`, `tenant-1`, `variant-a`) for environment separation, tenant isolation, and A/B testing. Protected labels restrict who can modify them.

    [Learn more about version control →](/developer/prompt-management/version-control)
  </Accordion>

  <Accordion title="Variable Substitution and Templating" icon="brackets-curly">
    Use `{{variable}}` syntax to insert dynamic content at runtime. Works in both text and chat prompts. Advanced features include message placeholders and composability for reusing prompt components.

    [Learn more about message placeholders →](/developer/prompt-management/message-placeholders)
  </Accordion>

  <Accordion title="Prompt Configuration" icon="sliders">
    Store model parameters (`temperature`, `top_p`, `max_tokens`), tool definitions, and custom metadata alongside prompts in the `config` object. Change model parameters without code changes and version configuration alongside prompt changes.

    [Learn more about prompt config →](/developer/prompt-management/config)
  </Accordion>

  <Accordion title="Text vs Chat Prompts" icon="messages">
    **Text prompts**: Single string with variables (for completion models). **Chat prompts**: Array of messages with roles (for conversational models). Both support variable substitution, configuration, and versioning.

    [Learn more about the data model →](/developer/prompt-management/prompts-data-model)
  </Accordion>
</AccordionGroup>

## Advanced Features

<AccordionGroup>
  <Accordion title="Client-Side Caching for Zero Latency" icon="server">
    ABV SDKs cache prompts locally with background refresh. First request fetches from ABV; subsequent requests return cached prompts instantly. Background processes check for updates and refresh when versions change.

    [Learn more about caching →](/developer/prompt-management/caching-prompts)
  </Accordion>

  <Accordion title="Link Prompts to Traces for Metrics" icon="link">
    Connect prompts to observability traces to track which version generated each response. Analyze metrics per version: latency, token usage, costs, and evaluation scores. Monitor in real-time and compare performance between versions.

    [Learn more about linking prompts to traces →](/developer/prompt-management/link-prompts-to-traces)
  </Accordion>

  <Accordion title="LLM Playground for Interactive Testing" icon="flask-vial">
    Test prompts interactively before deployment. Enter variables, select models, adjust parameters, and see responses in real-time. Faster iteration than deploying and testing in code.

    [Learn more about the playground →](/developer/basic-features/prompt-playground)
  </Accordion>

  <Accordion title="Systematic Testing with Prompt Experiments" icon="flask">
    Test prompts systematically against datasets to measure quality before production. Compare results across prompt versions: quality scores, output differences, and failure cases.

    [Learn more about prompt experiments →](/developer/evaluations/prompt-experiments)
  </Accordion>

  <Accordion title="A/B Testing in Production" icon="shuffle">
    Test multiple prompt versions simultaneously by selecting between labels and comparing metrics. ABV metrics show performance breakdown by prompt version.

    [Learn more about A/B testing →](/developer/prompt-management/ab-testing-llm-prompts)
  </Accordion>

  <Accordion title="Guaranteed Availability with Fallback Prompts" icon="shield">
    Configure fallback prompts embedded in your application code, used if ABV becomes unavailable and cached prompts are expired. Ensures mission-critical applications continue functioning during outages.

    [Learn more about guaranteed availability →](/developer/prompt-management/guaranteed-availability)
  </Accordion>

  <Accordion title="Composability and Reusable Components" icon="puzzle-piece">
    Build prompts from reusable components using prompt composition. Reference other prompts as building blocks to reduce duplication and maintain consistency. Update shared instructions once to affect all referencing prompts.

    [Learn more about composability →](/developer/prompt-management/composability)
  </Accordion>

  <Accordion title="Prompt Folders for Organization" icon="folder">
    Organize prompts into hierarchical folders for better management in large projects. Organize by feature, model, tenant, or environment.

    [Learn more about folders →](/developer/prompt-management/folders)
  </Accordion>

  <Accordion title="GitHub Integration" icon="github">
    Sync prompts to GitHub repositories for version control alongside code. Prompt changes create pull requests for review. Merge triggers deployment via CI/CD or manual label assignment.

    [Learn more about GitHub integration →](/developer/prompt-management/github-integration)
  </Accordion>

  <Accordion title="Webhooks and Slack Notifications" icon="bell">
    Receive notifications when prompts change (new versions, label assignments, protected label modifications). Integrate with Slack for team notifications or webhooks for custom workflows.

    [Learn more about webhooks →](/developer/prompt-management/webhooks-slack-integration)
  </Accordion>
</AccordionGroup>

# Getting Started

Follow the quickstart to create your first prompt and use it in your application:

<Card title="Get Started with Prompt Management" icon="rocket" href="/developer/prompt-management/get-started">
  Step-by-step guide to creating prompts, fetching them in your application, and linking them to traces
</Card>

# Other Features

<CardGroup cols={2}>
  <Card title="Prompts Data Model" icon="database" href="/developer/prompt-management/prompts-data-model">
    Understand prompt structure, text vs chat formats, and configuration options
  </Card>

  <Card title="Version Control" icon="code-branch" href="/developer/prompt-management/version-control">
    Learn about versioning, labels, rollbacks, and deployment strategies
  </Card>

  <Card title="Link Prompts to Traces" icon="link" href="/developer/prompt-management/link-prompts-to-traces">
    Track metrics and performance for each prompt version through observability
  </Card>

  <Card title="Prompt Playground" icon="flask-vial" href="/developer/basic-features/prompt-playground">
    Test prompts interactively before deploying to production
  </Card>

  <Card title="A/B Testing" icon="shuffle" href="/developer/prompt-management/ab-testing-llm-prompts">
    Compare prompt variants in production with metrics-driven analysis
  </Card>

  <Card title="Caching Prompts" icon="server" href="/developer/prompt-management/caching-prompts">
    Understand client-side caching for zero-latency prompt fetching
  </Card>

  <Card title="Message Placeholders" icon="brackets-curly" href="/developer/prompt-management/message-placeholders">
    Use dynamic placeholders in chat prompts for advanced templating
  </Card>

  <Card title="Prompt Experiments" icon="flask" href="/developer/evaluations/prompt-experiments">
    Test prompts systematically against datasets before deployment
  </Card>
</CardGroup>
