# What Is the defaultPrompt Field in OpenAI Plugin Interface Configuration?

> Understand the defaultPrompt field in OpenAI plugin configuration. Discover starter prompts for users in the Codex Composer UI, simplifying plugin interaction and capability discovery.

- Repository: [OpenAI/plugins](https://github.com/openai/plugins)
- Tags: deep-dive
- Published: 2026-06-20

---

**The `defaultPrompt` field defines starter prompts that appear as clickable suggestions in the Codex Composer UI, helping users discover common plugin capabilities without typing full requests.**

The `defaultPrompt` field is a critical component of the `interface` object in an OpenAI plugin's manifest file ([`plugin.json`](https://github.com/openai/plugins/blob/main/plugin.json)). Located in the `openai/plugins` repository, this field drives the user-facing discovery experience by providing ready-to-use utterances that showcase your plugin's most compelling actions. When configured correctly, it bridges the gap between plugin installation and user adoption by eliminating the blank-page problem.

## Where defaultPrompt Lives in the Manifest

The field resides inside the **interface** object of [`plugin.json`](https://github.com/openai/plugins/blob/main/plugin.json), alongside metadata like `displayName`, `description`, and icons. According to the canonical specification in [`.agents/skills/plugin-creator/references/plugin-json-spec.md`](https://github.com/openai/plugins/blob/main/.agents/skills/plugin-creator/references/plugin-json-spec.md), this field accepts an array of strings that the Codex front-end renders as starter prompts.

## Purpose and Behavior of defaultPrompt

### UI Discovery Mechanism

When a user selects your plugin in the Codex Composer, the front-end reads the `defaultPrompt` array and displays up to three entries as clickable suggestion chips beneath the plugin's card. Clicking any prompt immediately injects its text into the conversation, invoking your plugin with that specific intent. This pattern reduces friction by offering concrete examples of what your plugin can accomplish.

### Technical Constraints

The implementation enforces strict limits to ensure UI consistency. Only the **first three entries** are consumed; additional strings are silently ignored. Each entry is **truncated to 128 characters**, though the UI renders best with concise prompts around **50 characters** for optimal legibility across mobile and desktop viewports.

## Implementation Examples

### Minimal Configuration

Define your starter prompts as a JSON array inside the interface object:

```json
{
  "interface": {
    "displayName": "My Plugin",
    "shortDescription": "Do amazing things",
    "defaultPrompt": [
      "Summarize my inbox and draft replies for me.",
      "Find open bugs and turn them into Linear tickets."
    ]
  }
}

```

### Real-World Usage in the Zoom Plugin

The Zoom plugin demonstrates practical implementation in [`plugins/zoom/.codex-plugin/plugin.json`](https://github.com/openai/plugins/blob/main/plugins/zoom/.codex-plugin/plugin.json), supplying prompts like "Search my recent Zoom meetings for the discussion about pricing." This gives users immediate context for how the plugin interacts with their meeting data.

### UI Consumption Pattern

The Codex Composer processes these prompts using logic similar to the following pseudo-code:

```javascript
// Extract and render starter prompts
const prompts = plugin.interface.defaultPrompt.slice(0, 3);
prompts.forEach(text => {
  renderStarterPrompt(text, () => insertIntoComposer(text));
});

```

## Architectural Role vs. Runtime Impact

It is essential to distinguish that `defaultPrompt` serves purely as **UX guidance**. It does not affect the runtime behavior, API schema, or function calling logic of your plugin. The field belongs exclusively to the presentation layer, helping users formulate requests while the actual execution depends on your plugin's API implementation and tool definitions.

## Summary

- The `defaultPrompt` field lives inside the `interface` object of [`plugin.json`](https://github.com/openai/plugins/blob/main/plugin.json) in the `openai/plugins` repository.
- It displays up to three starter prompts (≤128 characters each) as clickable suggestions in the Codex Composer UI.
- Clicking a prompt injects the text into the chat, immediately invoking the plugin with that intent.
- The field is defined in [`.agents/skills/plugin-creator/references/plugin-json-spec.md`](https://github.com/openai/plugins/blob/main/.agents/skills/plugin-creator/references/plugin-json-spec.md) and implemented in examples like [`plugins/zoom/.codex-plugin/plugin.json`](https://github.com/openai/plugins/blob/main/plugins/zoom/.codex-plugin/plugin.json).
- This metadata drives discovery and onboarding but does not influence runtime plugin behavior.

## Frequently Asked Questions

### How many defaultPrompt entries does the UI display?

The Codex Composer displays a maximum of **three entries** from the `defaultPrompt` array. Any additional strings beyond the first three are ignored by the front-end.

### What happens if my defaultPrompt strings are too long?

Strings exceeding **128 characters** are truncated by the UI. For optimal display across devices, aim for approximately **50 characters** to ensure the full prompt remains legible without truncation.

### Does defaultPrompt affect how my plugin processes API requests?

No. The `defaultPrompt` field is purely for **UI/UX guidance** and discovery. It helps users craft initial requests but has no impact on your plugin's runtime logic, API schema validation, or function calling behavior.

### Where can I find the official specification for defaultPrompt?

The canonical specification resides in [`.agents/skills/plugin-creator/references/plugin-json-spec.md`](https://github.com/openai/plugins/blob/main/.agents/skills/plugin-creator/references/plugin-json-spec.md) within the `openai/plugins` repository. This document defines the field's structure, constraints, and relationship to other interface metadata.