prompts/list and prompts/get, so clients can discover prompt templates and instantiate them with concrete arguments.
Where prompt definitions live
Prompts are ordinary.terse files in your project tree. Default folder layout and discovery rules are documented in Project structure—use that page when you need to know exactly where files go.
You can point prompt discovery at a different directory from .hyperterse:
.hyperterse
.hyperterse using the prompts array form. See Root configuration.
Prompt file shape
Each prompt file defines:- prompt identity (
name, optional; defaults to filename) - optional metadata (
title,description) - optional argument definitions (
arguments) - one or more message templates (
messages)
Argument interpolation
When a client callsprompts/get, Hyperterse interpolates {{ argumentName }} placeholders in each message using the provided prompt arguments.
- Missing placeholders are left as-is.
- Supported placeholder token characters are alphanumeric and underscore.
- Message order is preserved exactly as configured.
Runtime behavior
Once loaded, prompt definitions are available through MCP:prompts/listto discover promptsprompts/getto render message content with argumentscompletion/completefor prompt argument completions whencompletionvalues are declarednotifications/prompts/list_changedwhen prompt definitions change after a model reload
Validation and constraints
Prompt configs are validated before runtime:- prompt names must be unique
- at least one
messagesentry is required - each message requires
role+text - supported roles:
user,assistant,system - argument names must be unique within a prompt