Title: PromptPack Specification
Type objectRequired No Additional properties Not allowed
Description: Schema for packaging, testing, and running multi-prompt conversational systems with multimodal, workflow, and agent support
Examples:
"$schema" : " https://promptpack.org/schema/v1/promptpack.schema.json " ,
"id" : " customer-support " ,
"name" : " Customer Support Pack " ,
"description" : " Complete customer support prompt pack with multiple task types " ,
"syntax" : " {{variable}} " ,
"description" : " General customer support assistant " ,
"system_template" : " You are a {{role}} assistant for {{company}}. " ,
"description" : " The role of the assistant " ,
"example" : " support agent "
"description" : " Look up order details by order ID " ,
"description" : " The order ID to look up "
"$schema" : " https://promptpack.org/schema/v1/promptpack.schema.json " ,
"name" : " Image Analysis Pack " ,
"description" : " Multimodal pack for analyzing images with vision models " ,
"syntax" : " {{variable}} " ,
"name" : " Image Analyzer " ,
"description" : " Analyzes images and provides detailed descriptions " ,
"system_template" : " You are an expert image analyst. Provide detailed, accurate descriptions of images. " ,
"default_detail" : " high " ,
"name" : " simple-image-analysis " ,
"description" : " Basic image analysis with a single photo " ,
"text" : " What's in this image? "
"file_path" : " examples/photo.jpg " ,
"mime_type" : " image/jpeg " ,
"caption" : " Sample photo for analysis "
Property Pattern Type Deprecated Definition Title/Description - $schema No string No - JSON Schema reference for validation and IDE support + id No string No - Unique identifier for the pack. Used for referencing and caching. Should be lowercase with hyphens. + name No string No - Human-readable name for the pack. Displayed in UIs and documentation. + version No string No - Pack version following Semantic Versioning 2.0.0 (MAJOR.MINOR.PATCH). Can optionally include ‘v’ prefix. Use MAJOR for breaking changes, MINOR for new features, PATCH for bug fixes. This version tracks the pack as a whole, while individual prompts can have independent versions. - description No string No - Detailed description of the pack’s purpose, use cases, and contents. Supports markdown formatting. + template_engine No object No - Template engine configuration shared across all prompts in the pack. Defines how variables are substituted and fragments are resolved. + prompts No object No - Map of task_type to prompt configuration. Each key is a task type (e.g., ‘support’, ‘sales’) and each value is a complete prompt definition. A pack must contain at least one prompt. - fragments No object No - Shared template fragments that can be referenced by any prompt in the pack. Fragments are reusable text blocks resolved at compile time. Keys are fragment names, values are fragment content. - tools No object No - Tool definitions that can be referenced by prompts. Tools enable the LLM to call external functions. Keys are tool names, values are tool specifications following the JSON Schema for function calling. - metadata No object No - Optional pack-level metadata for categorization, discovery, and operational planning. - compilation No object No - Information about when and how this pack was compiled. Generated automatically by the packc compiler. - evals No array No - Pack-level eval definitions that apply across all prompts. Useful for cross-cutting quality concerns like brand consistency or safety checks. Prompt-level evals with the same id override pack-level evals. - workflow No object No In #/$defs/WorkflowConfig Workflow configuration defining a state machine over the pack’s prompts. Each state references a prompt key and declares event-driven transitions. - agents No object No In #/$defs/AgentsConfig Agent configuration mapping prompts to A2A-compatible agent definitions. Enables multi-agent orchestration via the Agent-to-Agent protocol.
1. Property PromptPack Specification > $schema
Type stringRequired No Default "https://promptpack.org/schema/v1/promptpack.schema.json"
Description: JSON Schema reference for validation and IDE support
Example:
" https://promptpack.org/schema/v1/promptpack.schema.json "
2. Property PromptPack Specification > id
Description: Unique identifier for the pack. Used for referencing and caching. Should be lowercase with hyphens.
Examples:
Restrictions Min length 1 Max length 100 Must match regular expression ^[a-z][a-z0-9-]*$ Test
3. Property PromptPack Specification > name
Description: Human-readable name for the pack. Displayed in UIs and documentation.
Examples:
Restrictions Min length 1 Max length 200
4. Property PromptPack Specification > version
Description: Pack version following Semantic Versioning 2.0.0 (MAJOR.MINOR.PATCH). Can optionally include ‘v’ prefix. Use MAJOR for breaking changes, MINOR for new features, PATCH for bug fixes. This version tracks the pack as a whole, while individual prompts can have independent versions.
Examples:
Restrictions Must match regular expression ^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$ Test
5. Property PromptPack Specification > description
Description: Detailed description of the pack’s purpose, use cases, and contents. Supports markdown formatting.
Example:
" Complete customer support prompt pack with multiple task types for handling support, sales, and technical inquiries "
Restrictions Max length 5000
6. Property PromptPack Specification > template_engine
Type objectRequired Yes Additional properties Not allowed
Description: Template engine configuration shared across all prompts in the pack. Defines how variables are substituted and fragments are resolved.
Property Pattern Type Deprecated Definition Title/Description + version No string No - Template engine version. Use ‘v1’ for the current stable version. + syntax No string No - Variable substitution syntax pattern. Defines how variables appear in templates. - features No array of enum (of string) No - Optional list of supported template features beyond basic substitution.
6.1. Property PromptPack Specification > template_engine > version
Description: Template engine version. Use ‘v1’ for the current stable version.
Examples:
6.2. Property PromptPack Specification > template_engine > syntax
Description: Variable substitution syntax pattern. Defines how variables appear in templates.
Examples:
6.3. Property PromptPack Specification > template_engine > features
Type array of enum (of string)Required No
Description: Optional list of supported template features beyond basic substitution.
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
6.3.1. PromptPack Specification > template_engine > features > features items
Type enum (of string)Required No
Must be one of:
“basic_substitution”
“fragments”
“conditionals”
“loops”
“filters”
7. Property PromptPack Specification > prompts
Description: Map of task_type to prompt configuration. Each key is a task type (e.g., ‘support’, ‘sales’) and each value is a complete prompt definition. A pack must contain at least one prompt.
Example:
"system_template" : " You are a helpful assistant. "
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No In #/$defs/Prompt A single prompt configuration within a pack. Each prompt represents a specific task type (e.g., ‘support’, ‘sales’) with its own template, variables, tools, and validation rules. Prompts within a pack can evolve independently with their own version numbers.
7.1. Property PromptPack Specification > prompts > Prompt
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Prompt
Description: A single prompt configuration within a pack. Each prompt represents a specific task type (e.g., ‘support’, ‘sales’) with its own template, variables, tools, and validation rules. Prompts within a pack can evolve independently with their own version numbers.
Property Pattern Type Deprecated Definition Title/Description + id No string No - Unique identifier for this prompt, typically matching the task_type key + name No string No - Human-readable name for this prompt - description No string No - Detailed description of this prompt’s purpose and behavior + version No string No - Prompt version following Semantic Versioning 2.0.0. Independent from pack version, allowing individual prompts to evolve separately. + system_template No string No - The system prompt template. Use template syntax (e.g., {{variable}}) for variable substitution. This is the core instruction that guides the LLM’s behavior. - variables No array No - Variable definitions for this prompt. Variables are placeholders in the template that are replaced with actual values at runtime. - tools No array of string No - List of tool names that this prompt is allowed to use. Tools must be defined in the pack-level ‘tools’ object. - tool_policy No object No In #/$defs/ToolPolicy Policy governing how tools can be used by this prompt - pipeline No object No In #/$defs/PipelineConfig Pipeline configuration defining processing stages and middleware - parameters No object No In #/$defs/Parameters LLM generation parameters like temperature and max_tokens - validators No array No - Validation rules (guardrails) applied to LLM responses - evals No array No - Eval definitions scoped to this prompt. These evals assess the quality of responses generated by this specific prompt. Prompt-level evals with the same id override pack-level evals. - tested_models No array No - Model testing results documenting which models have been tested with this prompt and their performance - model_overrides No object No - Model-specific template modifications. Keys are model names (e.g., ‘claude-3-opus’, ‘gpt-4’), values are override configurations. - media No object No In #/$defs/MediaConfig Multimodal content configuration for this prompt. Defines supported media types and validation rules.
7.1.1. Property PromptPack Specification > prompts > additionalProperties > id
Description: Unique identifier for this prompt, typically matching the task_type key
Examples:
Restrictions Must match regular expression ^[a-z][a-z0-9_-]*$ Test
7.1.2. Property PromptPack Specification > prompts > additionalProperties > name
Description: Human-readable name for this prompt
Examples:
7.1.3. Property PromptPack Specification > prompts > additionalProperties > description
Description: Detailed description of this prompt’s purpose and behavior
Example:
" General customer support assistant for handling inquiries "
7.1.4. Property PromptPack Specification > prompts > additionalProperties > version
Description: Prompt version following Semantic Versioning 2.0.0. Independent from pack version, allowing individual prompts to evolve separately.
Examples:
Restrictions Must match regular expression ^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$ Test
7.1.5. Property PromptPack Specification > prompts > additionalProperties > system_template
Description: The system prompt template. Use template syntax (e.g., {{variable}}) for variable substitution. This is the core instruction that guides the LLM’s behavior.
Examples:
" You are a {{role}} assistant for {{company}}. \\ n \\ nProvide helpful, professional support. "
" You are an expert in {{domain}}. Help users with {{task_description}}. "
7.1.6. Property PromptPack Specification > prompts > additionalProperties > variables
Description: Variable definitions for this prompt. Variables are placeholders in the template that are replaced with actual values at runtime.
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description Variable A template variable definition with type information and validation rules. Variables are replaced with actual values when the prompt is rendered.
7.1.6.1. PromptPack Specification > prompts > additionalProperties > variables > Variable
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Variable
Description: A template variable definition with type information and validation rules. Variables are replaced with actual values when the prompt is rendered.
Property Pattern Type Deprecated Definition Title/Description + name No string No - Variable name used in templates (e.g., {{name}}) + type No enum (of string) No - Data type of the variable + required No boolean No - Whether this variable must be provided. Required variables without values will cause an error. - default No object No - Default value used when variable is not provided. Cannot be set if required is true. - description No string No - Human-readable description of the variable’s purpose - example No object No - Example value showing expected format and content - validation No object No - Validation rules applied to the variable value at runtime
7.1.6.1.1. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > name
Description: Variable name used in templates (e.g., {{name}})
Examples:
Restrictions Must match regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ Test
7.1.6.1.2. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > type
Type enum (of string)Required Yes
Description: Data type of the variable
Examples:
Must be one of:
“string”
“number”
“boolean”
“object”
“array”
7.1.6.1.3. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > required
Description: Whether this variable must be provided. Required variables without values will cause an error.
7.1.6.1.4. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > default
Type objectRequired No Additional properties Any type allowed
Description: Default value used when variable is not provided. Cannot be set if required is true.
Examples:
7.1.6.1.5. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > description
Description: Human-readable description of the variable’s purpose
Examples:
" The role of the assistant "
7.1.6.1.6. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > example
Type objectRequired No Additional properties Any type allowed
Description: Example value showing expected format and content
Examples:
7.1.6.1.7. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation
Type objectRequired No Additional properties Not allowed
Description: Validation rules applied to the variable value at runtime
Property Pattern Type Deprecated Definition Title/Description - pattern No string No - Regular expression pattern (for string types) - min_length No integer No - Minimum string length (for string types) - max_length No integer No - Maximum string length (for string types) - minimum No number No - Minimum numeric value (for number types) - maximum No number No - Maximum numeric value (for number types) - enum No array No - List of allowed values
7.1.6.1.7.1. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > pattern
Description: Regular expression pattern (for string types)
Examples:
" ^[a-z0-9._%+-]+@[a-z0-9.-]+ \\\\ .[a-z]{2,}$ "
7.1.6.1.7.2. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > min_length
Description: Minimum string length (for string types)
Examples:
7.1.6.1.7.3. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > max_length
Description: Maximum string length (for string types)
Examples:
7.1.6.1.7.4. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > minimum
Description: Minimum numeric value (for number types)
Examples:
7.1.6.1.7.5. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > maximum
Description: Maximum numeric value (for number types)
Examples:
7.1.6.1.7.6. Property PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > enum
Description: List of allowed values
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description enum items -
7.1.6.1.7.6.1. PromptPack Specification > prompts > additionalProperties > variables > variables items > validation > enum > enum items
Type objectRequired No Additional properties Any type allowed
Type array of stringRequired No
Description: List of tool names that this prompt is allowed to use. Tools must be defined in the pack-level ‘tools’ object.
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type objectRequired No Additional properties Not allowed Defined in #/$defs/ToolPolicy
Description: Policy governing how tools can be used by this prompt
Property Pattern Type Deprecated Definition Title/Description - tool_choice No enum (of string) No - ‘auto’ lets the LLM decide when to use tools, ‘required’ forces tool use, ‘none’ disables tools - max_rounds No integer No - Maximum number of LLM → tool → LLM cycles allowed per turn - max_tool_calls_per_turn No integer No - Maximum number of tool calls allowed in a single turn - blocklist No array of string No - List of tool names that are not allowed for this prompt (overrides tools list)
Type enum (of string)Required No Default "auto"
Description: ‘auto’ lets the LLM decide when to use tools, ‘required’ forces tool use, ‘none’ disables tools
Examples:
Must be one of:
Type integerRequired No Default 5
Description: Maximum number of LLM → tool → LLM cycles allowed per turn
Examples:
Type integerRequired No Default 10
Description: Maximum number of tool calls allowed in a single turn
Examples:
Type array of stringRequired No
Description: List of tool names that are not allowed for this prompt (overrides tools list)
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
7.1.9. Property PromptPack Specification > prompts > additionalProperties > pipeline
Type objectRequired No Additional properties Not allowed Defined in #/$defs/PipelineConfig
Description: Pipeline configuration defining processing stages and middleware
Property Pattern Type Deprecated Definition Title/Description + stages No array of string No - Ordered list of pipeline stages. Common stages: ‘template’, ‘provider’, ‘validator’ - middleware No array No - Middleware components with their configurations. Applied in order during pipeline execution.
7.1.9.1. Property PromptPack Specification > prompts > additionalProperties > pipeline > stages
Type array of stringRequired Yes
Description: Ordered list of pipeline stages. Common stages: ‘template’, ‘provider’, ‘validator’
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
7.1.9.1.1. PromptPack Specification > prompts > additionalProperties > pipeline > stages > stages items
7.1.9.2. Property PromptPack Specification > prompts > additionalProperties > pipeline > middleware
Description: Middleware components with their configurations. Applied in order during pipeline execution.
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description MiddlewareConfig Configuration for a single middleware component in the pipeline
7.1.9.2.1. PromptPack Specification > prompts > additionalProperties > pipeline > middleware > MiddlewareConfig
Type objectRequired No Additional properties Not allowed Defined in #/$defs/MiddlewareConfig
Description: Configuration for a single middleware component in the pipeline
Property Pattern Type Deprecated Definition Title/Description + type No string No - Middleware type identifier - config No object No - Type-specific configuration for the middleware
7.1.9.2.1.1. Property PromptPack Specification > prompts > additionalProperties > pipeline > middleware > middleware items > type
Description: Middleware type identifier
Examples:
7.1.9.2.1.2. Property PromptPack Specification > prompts > additionalProperties > pipeline > middleware > middleware items > config
Type objectRequired No Additional properties Any type allowed
Description: Type-specific configuration for the middleware
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
7.1.10. Property PromptPack Specification > prompts > additionalProperties > parameters
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Parameters
Description: LLM generation parameters like temperature and max_tokens
Property Pattern Type Deprecated Definition Title/Description - temperature No number No - Sampling temperature (0-2). Higher values make output more random, lower values more deterministic. - max_tokens No integer No - Maximum number of tokens to generate in the response - top_p No number No - Nucleus sampling parameter (0-1). Alternative to temperature for controlling randomness. - top_k No integer or null No - Top-k sampling parameter. Limits to top K tokens. Null means no limit. - frequency_penalty No number No - Penalty for token frequency (-2 to 2). Positive values reduce repetition. - presence_penalty No number No - Penalty for token presence (-2 to 2). Positive values encourage new topics.
7.1.10.1. Property PromptPack Specification > prompts > additionalProperties > parameters > temperature
Description: Sampling temperature (0-2). Higher values make output more random, lower values more deterministic.
Examples:
Restrictions Minimum ≥ 0 Maximum ≤ 2
7.1.10.2. Property PromptPack Specification > prompts > additionalProperties > parameters > max_tokens
Description: Maximum number of tokens to generate in the response
Examples:
7.1.10.3. Property PromptPack Specification > prompts > additionalProperties > parameters > top_p
Description: Nucleus sampling parameter (0-1). Alternative to temperature for controlling randomness.
Examples:
Restrictions Minimum ≥ 0 Maximum ≤ 1
7.1.10.4. Property PromptPack Specification > prompts > additionalProperties > parameters > top_k
Type integer or nullRequired No
Description: Top-k sampling parameter. Limits to top K tokens. Null means no limit.
Examples:
7.1.10.5. Property PromptPack Specification > prompts > additionalProperties > parameters > frequency_penalty
Description: Penalty for token frequency (-2 to 2). Positive values reduce repetition.
Examples:
Restrictions Minimum ≥ -2 Maximum ≤ 2
7.1.10.6. Property PromptPack Specification > prompts > additionalProperties > parameters > presence_penalty
Description: Penalty for token presence (-2 to 2). Positive values encourage new topics.
Examples:
Restrictions Minimum ≥ -2 Maximum ≤ 2
7.1.11. Property PromptPack Specification > prompts > additionalProperties > validators
Description: Validation rules (guardrails) applied to LLM responses
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description Validator A validation rule (guardrail) applied to LLM responses. Validators can check content, length, format, and other constraints to ensure response quality and safety.
7.1.11.1. PromptPack Specification > prompts > additionalProperties > validators > Validator
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Validator
Description: A validation rule (guardrail) applied to LLM responses. Validators can check content, length, format, and other constraints to ensure response quality and safety.
Property Pattern Type Deprecated Definition Title/Description + type No enum (of string) No - Type of validation to perform + enabled No boolean No - Whether this validator is active. Allows temporarily disabling validators without removing them. - fail_on_violation No boolean No - If true, validation failures cause an error. If false, violations are logged but allowed. - params No object No - Validator-specific parameters
7.1.11.1.1. Property PromptPack Specification > prompts > additionalProperties > validators > validators items > type
Type enum (of string)Required Yes
Description: Type of validation to perform
Examples:
Must be one of:
“banned_words”
“max_length”
“min_length”
“regex_match”
“json_schema”
“sentiment”
“toxicity”
“pii_detection”
“custom”
7.1.11.1.2. Property PromptPack Specification > prompts > additionalProperties > validators > validators items > enabled
Description: Whether this validator is active. Allows temporarily disabling validators without removing them.
7.1.11.1.3. Property PromptPack Specification > prompts > additionalProperties > validators > validators items > fail_on_violation
Type booleanRequired No Default false
Description: If true, validation failures cause an error. If false, violations are logged but allowed.
7.1.11.1.4. Property PromptPack Specification > prompts > additionalProperties > validators > validators items > params
Type objectRequired No Additional properties Any type allowed
Description: Validator-specific parameters
Examples:
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
7.1.12. Property PromptPack Specification > prompts > additionalProperties > evals
Description: Eval definitions scoped to this prompt. These evals assess the quality of responses generated by this specific prompt. Prompt-level evals with the same id override pack-level evals.
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description Eval An eval definition that declares how to assess LLM output quality. Evals run asynchronously and produce scores or metrics, unlike validators which run inline and block.
7.1.12.1. PromptPack Specification > prompts > additionalProperties > evals > Eval
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Eval
Description: An eval definition that declares how to assess LLM output quality. Evals run asynchronously and produce scores or metrics, unlike validators which run inline and block.
Property Pattern Type Deprecated Definition Title/Description + id No string No - Unique identifier for this eval within its scope (prompt-level or pack-level). - description No string No - Human-readable description of what this eval measures and why it matters. + type No string No - The assertion type that determines how this eval is executed. Not an enum — runtimes define and register their own types. + trigger No enum (of string) No - When this eval should be triggered. - sample_percentage No number No - Percentage of turns or sessions to sample when trigger is sample_turns or sample_sessions. Ignored for other trigger types. - enabled No boolean No - Whether this eval is active. Allows temporarily disabling evals without removing them. - params No object No - Type-specific configuration for the eval. Structure depends on the eval type — runtimes interpret these based on the type field. - metric No object No In #/$defs/MetricDef Prometheus-style metric declaration describing the output shape of this eval. Runtimes use this to expose results to monitoring systems.
7.1.12.1.1. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > id
Description: Unique identifier for this eval within its scope (prompt-level or pack-level).
Examples:
7.1.12.1.2. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > description
Description: Human-readable description of what this eval measures and why it matters.
7.1.12.1.3. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > type
Description: The assertion type that determines how this eval is executed. Not an enum — runtimes define and register their own types.
Examples:
7.1.12.1.4. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > trigger
Type enum (of string)Required Yes
Description: When this eval should be triggered.
Must be one of:
“every_turn”
“on_session_complete”
“sample_turns”
“sample_sessions”
7.1.12.1.5. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > sample_percentage
Type numberRequired No Default 5
Description: Percentage of turns or sessions to sample when trigger is sample_turns or sample_sessions. Ignored for other trigger types.
Examples:
Restrictions Minimum ≥ 0 Maximum ≤ 100
7.1.12.1.6. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > enabled
Type booleanRequired No Default true
Description: Whether this eval is active. Allows temporarily disabling evals without removing them.
7.1.12.1.7. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > params
Type objectRequired No Additional properties Any type allowed
Description: Type-specific configuration for the eval. Structure depends on the eval type — runtimes interpret these based on the type field.
Examples:
"judge_prompt" : " Rate the response tone on a scale of 1-5 for professionalism. " ,
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
7.1.12.1.8. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric
Type objectRequired No Additional properties Any type allowed Defined in #/$defs/MetricDef
Description: Prometheus-style metric declaration describing the output shape of this eval. Runtimes use this to expose results to monitoring systems.
Property Pattern Type Deprecated Definition Title/Description + name No string No - Metric name. Should follow Prometheus naming conventions (snake_case, namespace prefix recommended). + type No enum (of string) No - Prometheus metric type that describes the value semantics. - range No object No - Optional value bounds. Useful for gauge metrics with known ranges. - - additionalProperties No object No - -
7.1.12.1.8.1. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric > name
Description: Metric name. Should follow Prometheus naming conventions (snake_case, namespace prefix recommended).
Examples:
" promptpack_brand_consistency "
Restrictions Must match regular expression ^[a-zA-Z_:][a-zA-Z0-9_:]*$ Test
7.1.12.1.8.2. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric > type
Type enum (of string)Required Yes
Description: Prometheus metric type that describes the value semantics.
Must be one of:
“gauge”
“counter”
“histogram”
“boolean”
7.1.12.1.8.3. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric > range
Type objectRequired No Additional properties Any type allowed
Description: Optional value bounds. Useful for gauge metrics with known ranges.
Property Pattern Type Deprecated Definition Title/Description - min No number No - Minimum expected value - max No number No - Maximum expected value
7.1.12.1.8.3.1. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric > range > min
Description: Minimum expected value
7.1.12.1.8.3.2. Property PromptPack Specification > prompts > additionalProperties > evals > evals items > metric > range > max
Description: Maximum expected value
7.1.13. Property PromptPack Specification > prompts > additionalProperties > tested_models
Description: Model testing results documenting which models have been tested with this prompt and their performance
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description TestedModel Testing results for a specific model. Documents which models have been tested with this prompt and their performance metrics.
7.1.13.1. PromptPack Specification > prompts > additionalProperties > tested_models > TestedModel
Type objectRequired No Additional properties Not allowed Defined in #/$defs/TestedModel
Description: Testing results for a specific model. Documents which models have been tested with this prompt and their performance metrics.
Property Pattern Type Deprecated Definition Title/Description + provider No string No - LLM provider name + model No string No - Specific model identifier + date No string No - Date when the model was tested (YYYY-MM-DD) - success_rate No number No - Success rate (0-1) from test runs - avg_tokens No number No - Average number of tokens used per response - avg_cost No number No - Average cost per execution in USD - avg_latency_ms No number No - Average response latency in milliseconds - notes No string No - Additional notes about model performance or observations
7.1.13.1.1. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > provider
Description: LLM provider name
Examples:
7.1.13.1.2. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > model
Description: Specific model identifier
Examples:
7.1.13.1.3. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > date
Type stringRequired Yes Format date
Description: Date when the model was tested (YYYY-MM-DD)
Examples:
7.1.13.1.4. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > success_rate
Description: Success rate (0-1) from test runs
Examples:
Restrictions Minimum ≥ 0 Maximum ≤ 1
7.1.13.1.5. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > avg_tokens
Description: Average number of tokens used per response
Examples:
7.1.13.1.6. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > avg_cost
Description: Average cost per execution in USD
Examples:
7.1.13.1.7. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > avg_latency_ms
Description: Average response latency in milliseconds
Examples:
7.1.13.1.8. Property PromptPack Specification > prompts > additionalProperties > tested_models > tested_models items > notes
Description: Additional notes about model performance or observations
7.1.14. Property PromptPack Specification > prompts > additionalProperties > model_overrides
Description: Model-specific template modifications. Keys are model names (e.g., ‘claude-3-opus’, ‘gpt-4’), values are override configurations.
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No In #/$defs/ModelOverride Model-specific template modifications. Allows customizing prompts for specific models without changing the base template.
7.1.14.1. Property PromptPack Specification > prompts > additionalProperties > model_overrides > ModelOverride
Type objectRequired No Additional properties Not allowed Defined in #/$defs/ModelOverride
Description: Model-specific template modifications. Allows customizing prompts for specific models without changing the base template.
Property Pattern Type Deprecated Definition Title/Description - system_template_prefix No string No - Text prepended to the system template for this model - system_template_suffix No string No - Text appended to the system template for this model - system_template No string No - Complete replacement system template for this model (overrides the base template entirely) - parameters No object No Same as parameters Model-specific parameter overrides
7.1.14.1.1. Property PromptPack Specification > prompts > additionalProperties > model_overrides > additionalProperties > system_template_prefix
Description: Text prepended to the system template for this model
Examples:
7.1.14.1.2. Property PromptPack Specification > prompts > additionalProperties > model_overrides > additionalProperties > system_template_suffix
Description: Text appended to the system template for this model
Examples:
" \\ n \\ nBe concise and direct. "
7.1.14.1.3. Property PromptPack Specification > prompts > additionalProperties > model_overrides > additionalProperties > system_template
Description: Complete replacement system template for this model (overrides the base template entirely)
7.1.14.1.4. Property PromptPack Specification > prompts > additionalProperties > model_overrides > additionalProperties > parameters
Type objectRequired No Additional properties Not allowed Same definition as parameters
Description: Model-specific parameter overrides
Type objectRequired No Additional properties Not allowed Defined in #/$defs/MediaConfig
Description: Multimodal content configuration for this prompt. Defines supported media types and validation rules.
Property Pattern Type Deprecated Definition Title/Description + enabled No boolean No - Whether multimodal content is enabled for this prompt - supported_types No array of string No - List of supported media types for this prompt. Common types include: image, audio, video, document, model3d, archive. Custom types are allowed - each type should have a corresponding configuration object (e.g., ‘foo’ type requires a ‘foo’ field with GenericMediaTypeConfig or a specific schema). - image No object No In #/$defs/ImageConfig Image-specific configuration and constraints - audio No object No In #/$defs/AudioConfig Audio-specific configuration and constraints - video No object No In #/$defs/VideoConfig Video-specific configuration and constraints - document No object No In #/$defs/DocumentConfig Document-specific configuration and constraints (PDFs, CAD files, spreadsheets, etc.) - examples No array No - Example multimodal messages showing how to use media with this prompt - ^[a-z0-9_]+$ Yes Combination No - -
Description: Whether multimodal content is enabled for this prompt
Type array of stringRequired No
Description: List of supported media types for this prompt. Common types include: image, audio, video, document, model3d, archive. Custom types are allowed - each type should have a corresponding configuration object (e.g., ‘foo’ type requires a ‘foo’ field with GenericMediaTypeConfig or a specific schema).
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Restrictions Must match regular expression ^[a-z0-9_]+$ Test
Type objectRequired No Additional properties Not allowed Defined in #/$defs/ImageConfig
Description: Image-specific configuration and constraints
Property Pattern Type Deprecated Definition Title/Description - max_size_mb No integer No - Maximum file size in megabytes - allowed_formats No array of enum (of string) No - List of allowed image formats - default_detail No enum (of string) No - Default detail level for image processing. ‘low’ uses fewer tokens, ‘high’ provides more detail, ‘auto’ lets the model decide. - require_caption No boolean No - Whether image captions are required - max_images_per_msg No integer No - Maximum number of images allowed per message
Description: Maximum file size in megabytes
Examples:
Type array of enum (of string)Required No
Description: List of allowed image formats
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type enum (of string)Required No
Must be one of:
“jpeg”
“jpg”
“png”
“webp”
“gif”
“bmp”
Type enum (of string)Required No Default "auto"
Description: Default detail level for image processing. ‘low’ uses fewer tokens, ‘high’ provides more detail, ‘auto’ lets the model decide.
Examples:
Must be one of:
Type booleanRequired No Default false
Description: Whether image captions are required
Description: Maximum number of images allowed per message
Examples:
Type objectRequired No Additional properties Not allowed Defined in #/$defs/AudioConfig
Description: Audio-specific configuration and constraints
Property Pattern Type Deprecated Definition Title/Description - max_size_mb No integer No - Maximum file size in megabytes - allowed_formats No array of enum (of string) No - List of allowed audio formats - max_duration_sec No integer No - Maximum audio duration in seconds - require_metadata No boolean No - Whether audio metadata (title, description) is required
Description: Maximum file size in megabytes
Examples:
Type array of enum (of string)Required No
Description: List of allowed audio formats
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type enum (of string)Required No
Must be one of:
“mp3”
“wav”
“opus”
“flac”
“m4a”
“aac”
Description: Maximum audio duration in seconds
Examples:
Type booleanRequired No Default false
Description: Whether audio metadata (title, description) is required
Type objectRequired No Additional properties Not allowed Defined in #/$defs/VideoConfig
Description: Video-specific configuration and constraints
Property Pattern Type Deprecated Definition Title/Description - max_size_mb No integer No - Maximum file size in megabytes - allowed_formats No array of enum (of string) No - List of allowed video formats - max_duration_sec No integer No - Maximum video duration in seconds - require_metadata No boolean No - Whether video metadata (title, description) is required
Description: Maximum file size in megabytes
Examples:
Type array of enum (of string)Required No
Description: List of allowed video formats
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type enum (of string)Required No
Must be one of:
“mp4”
“webm”
“mov”
“avi”
“mkv”
Description: Maximum video duration in seconds
Examples:
Type booleanRequired No Default false
Description: Whether video metadata (title, description) is required
Type objectRequired No Additional properties Not allowed Defined in #/$defs/DocumentConfig
Description: Document-specific configuration and constraints (PDFs, CAD files, spreadsheets, etc.)
Property Pattern Type Deprecated Definition Title/Description - max_size_mb No integer No - Maximum file size in megabytes - allowed_formats No array of string No - List of allowed document formats - max_pages No integer No - Maximum number of pages/sheets for paginated documents - require_metadata No boolean No - Whether document metadata (title, author, description) is required - extraction_mode No enum (of string) No - How to extract content from documents. ‘text’ extracts text only, ‘structured’ preserves formatting, ‘raw’ keeps original binary format.
Description: Maximum file size in megabytes
Examples:
Type array of stringRequired No
Description: List of allowed document formats
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
7.1.15.6.3. Property PromptPack Specification > prompts > additionalProperties > media > document > max_pages
Description: Maximum number of pages/sheets for paginated documents
Examples:
Type booleanRequired No Default false
Description: Whether document metadata (title, author, description) is required
Type enum (of string)Required No Default "text"
Description: How to extract content from documents. ‘text’ extracts text only, ‘structured’ preserves formatting, ‘raw’ keeps original binary format.
Examples:
Must be one of:
“text”
“structured”
“raw”
Description: Example multimodal messages showing how to use media with this prompt
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description MultimodalExample Example multimodal message demonstrating how to use media content with a prompt
Type objectRequired No Additional properties Not allowed Defined in #/$defs/MultimodalExample
Description: Example multimodal message demonstrating how to use media content with a prompt
Property Pattern Type Deprecated Definition Title/Description + name No string No - Name identifying this example - description No string No - Description of what this example demonstrates + role No enum (of string) No - Message role (typically ‘user’ or ‘assistant’) + parts No array No - Message content parts (text and/or media)
Description: Name identifying this example
Examples:
Description: Description of what this example demonstrates
Type enum (of string)Required Yes
Description: Message role (typically ‘user’ or ‘assistant’)
Example:
Must be one of:
“user”
“assistant”
“system”
Description: Message content parts (text and/or media)
Array restrictions Min items 1 Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description ContentPart A single content part within a multimodal message. Can be text or media.
7.1.15.7.1.4.1. PromptPack Specification > prompts > additionalProperties > media > examples > examples items > parts > ContentPart
Type objectRequired No Additional properties Not allowed Defined in #/$defs/ContentPart
Description: A single content part within a multimodal message. Can be text or media.
Property Pattern Type Deprecated Definition Title/Description + type No string No - Type of content part. Common types include: text, image, audio, video, document. Custom types are allowed for extensibility. - text No string No - Text content (required when type is ‘text’) - media No object No In #/$defs/MediaReference Media reference (required when type is ‘image’, ‘audio’, or ‘video’)
Description: Type of content part. Common types include: text, image, audio, video, document. Custom types are allowed for extensibility.
Examples:
Restrictions Must match regular expression ^[a-z0-9_]+$ Test
7.1.15.7.1.4.1.2. Property PromptPack Specification > prompts > additionalProperties > media > examples > examples items > parts > parts items > text
Description: Text content (required when type is ‘text’)
Examples:
Type objectRequired No Additional properties Not allowed Defined in #/$defs/MediaReference
Description: Media reference (required when type is ‘image’, ‘audio’, or ‘video’)
Property Pattern Type Deprecated Definition Title/Description - file_path No string No - Path to media file (relative to pack or absolute). Validated at compile time. - url No string No - URL to media file. Must be publicly accessible or require authentication. - base64 No string No - Base64-encoded media data. Use for small files or when embedding is preferred. + mime_type No string No - MIME type of the media file - detail No enum (of string) No - Detail level for image processing (images only). Overrides default_detail from ImageConfig. - caption No string No - Caption or description for the media
Description: Path to media file (relative to pack or absolute). Validated at compile time.
Examples:
Type stringRequired No Format uri
Description: URL to media file. Must be publicly accessible or require authentication.
Examples:
" https://example.com/image.jpg "
" https://cdn.example.com/video.mp4 "
Description: Base64-encoded media data. Use for small files or when embedding is preferred.
Example:
" iVBORw0KGgoAAAANSUhEUgAAAAUA... "
Description: MIME type of the media file
Examples:
Type enum (of string)Required No
Description: Detail level for image processing (images only). Overrides default_detail from ImageConfig.
Example:
Must be one of:
Description: Caption or description for the media
Examples:
" Customer's voice recording "
All properties whose name matches the regular expression
^[a-z0-9_]+$ (Test )
must respect the following conditions
Type combiningRequired No Additional properties Any type allowed
Type objectRequired No Additional properties Not allowed Same definition as image
Description: Configuration and validation rules for image content
Type objectRequired No Additional properties Not allowed Same definition as audio
Description: Configuration and validation rules for audio content
Type objectRequired No Additional properties Not allowed Same definition as video
Description: Configuration and validation rules for video content
Type objectRequired No Additional properties Not allowed Same definition as document
Description: Configuration and validation rules for document content (PDFs, CAD files, spreadsheets, etc.)
Type objectRequired No Additional properties Any type allowed Defined in #/$defs/GenericMediaTypeConfig
Description: Generic configuration for custom media types. Use this for types not covered by specific configs (ImageConfig, AudioConfig, etc.). Provides common validation properties that apply to most media types.
Property Pattern Type Deprecated Definition Title/Description - max_size_mb No integer No - Maximum file size in megabytes - allowed_formats No array of string No - List of allowed file formats/extensions - require_metadata No boolean No - Whether metadata is required for this media type - validation_params No object No - Custom validation parameters specific to this media type. Structure depends on the type. - - additionalProperties No object No - -
Description: Maximum file size in megabytes
Examples:
Type array of stringRequired No
Description: List of allowed file formats/extensions
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type booleanRequired No Default false
Description: Whether metadata is required for this media type
Type objectRequired No Additional properties Any type allowed
Description: Custom validation parameters specific to this media type. Structure depends on the type.
Examples:
"require_textures" : false
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
8. Property PromptPack Specification > fragments
Description: Shared template fragments that can be referenced by any prompt in the pack. Fragments are reusable text blocks resolved at compile time. Keys are fragment names, values are fragment content.
Example:
"customer_context" : " Customer: `{{customer_name}}` \\ nIssue: `{{issue}}` " ,
"greeting" : " Hello! How can I help you today? "
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No string No - -
8.1. Property PromptPack Specification > fragments > additionalProperties
Description: Tool definitions that can be referenced by prompts. Tools enable the LLM to call external functions. Keys are tool names, values are tool specifications following the JSON Schema for function calling.
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No In #/$defs/Tool A tool definition following OpenAI’s function calling format. Tools enable the LLM to call external functions to retrieve data or perform actions.
Type objectRequired No Additional properties Not allowed Defined in #/$defs/Tool
Description: A tool definition following OpenAI’s function calling format. Tools enable the LLM to call external functions to retrieve data or perform actions.
Property Pattern Type Deprecated Definition Title/Description + name No string No - Tool name used for referencing and calling + description No string No - Clear description of what the tool does. The LLM uses this to decide when to call the tool. - parameters No object No - JSON Schema defining the tool’s parameters. Follows JSON Schema specification.
Description: Tool name used for referencing and calling
Examples:
Restrictions Must match regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ Test
Description: Clear description of what the tool does. The LLM uses this to decide when to call the tool.
Examples:
" Look up order details by order ID "
" Create a support ticket with title, description, and priority "
Type objectRequired No Additional properties Any type allowed
Description: JSON Schema defining the tool’s parameters. Follows JSON Schema specification.
Property Pattern Type Deprecated Definition Title/Description + type No enum (of string) No - Must be ‘object’ for tool parameters + properties No object No - Parameter definitions - required No array of string No - List of required parameter names
Type enum (of string)Required Yes
Description: Must be ‘object’ for tool parameters
Must be one of:
Description: Parameter definitions
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
Type objectRequired No Additional properties Any type allowed
Type array of stringRequired No
Description: List of required parameter names
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Type objectRequired No Additional properties Any type allowed
Description: Optional pack-level metadata for categorization, discovery, and operational planning.
Property Pattern Type Deprecated Definition Title/Description - domain No string No - Domain or category for this pack - language No string No - Primary language code (ISO 639-1) - tags No array of string No - Tags for categorization and discovery - cost_estimate No object No - Cost estimation for using this pack - - additionalProperties No object No - -
10.1. Property PromptPack Specification > metadata > domain
Description: Domain or category for this pack
Examples:
Description: Primary language code (ISO 639-1)
Examples:
Restrictions Must match regular expression ^[a-z]{2}$ Test
Type array of stringRequired No
Description: Tags for categorization and discovery
Example:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description tags items -
Type objectRequired No Additional properties Any type allowed
Description: Cost estimation for using this pack
Property Pattern Type Deprecated Definition Title/Description - min_cost_usd No number No - Minimum cost per execution in USD - max_cost_usd No number No - Maximum cost per execution in USD - avg_cost_usd No number No - Average cost per execution in USD
Description: Minimum cost per execution in USD
Description: Maximum cost per execution in USD
Description: Average cost per execution in USD
11. Property PromptPack Specification > compilation
Type objectRequired No Additional properties Any type allowed
Description: Information about when and how this pack was compiled. Generated automatically by the packc compiler.
Property Pattern Type Deprecated Definition Title/Description + compiled_with No string No - Version of the packc compiler used to create this pack + created_at No string No - ISO 8601 timestamp when the pack was compiled + schema No string No - Pack format schema version used - source No string No - Optional source configuration file path
11.1. Property PromptPack Specification > compilation > compiled_with
Description: Version of the packc compiler used to create this pack
Examples:
11.2. Property PromptPack Specification > compilation > created_at
Type stringRequired Yes Format date-time
Description: ISO 8601 timestamp when the pack was compiled
Example:
11.3. Property PromptPack Specification > compilation > schema
Description: Pack format schema version used
Examples:
11.4. Property PromptPack Specification > compilation > source
Description: Optional source configuration file path
Examples:
12. Property PromptPack Specification > evals
Description: Pack-level eval definitions that apply across all prompts. Useful for cross-cutting quality concerns like brand consistency or safety checks. Prompt-level evals with the same id override pack-level evals.
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description Eval An eval definition that declares how to assess LLM output quality. Evals run asynchronously and produce scores or metrics, unlike validators which run inline and block.
12.1. PromptPack Specification > evals > Eval
Description: An eval definition that declares how to assess LLM output quality. Evals run asynchronously and produce scores or metrics, unlike validators which run inline and block.
13. Property PromptPack Specification > workflow
Type objectRequired No Additional properties Not allowed Defined in #/$defs/WorkflowConfig
Description: Workflow configuration defining a state machine over the pack’s prompts. Each state references a prompt key and declares event-driven transitions.
Property Pattern Type Deprecated Definition Title/Description + version No integer No - Workflow schema version. Use 1 for the current stable format. + entry No string No - Name of the initial state. Must match a key in the states object. + states No object No - Map of state name to state definition. Each state references a prompt and declares transitions. - engine No object No - Optional runtime engine hints for workflow execution (e.g., timeout, concurrency settings).
13.1. Property PromptPack Specification > workflow > version
Description: Workflow schema version. Use 1 for the current stable format.
Example:
13.2. Property PromptPack Specification > workflow > entry
Description: Name of the initial state. Must match a key in the states object.
Examples:
13.3. Property PromptPack Specification > workflow > states
Description: Map of state name to state definition. Each state references a prompt and declares transitions.
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No In #/$defs/WorkflowState A single state in the workflow state machine. References a prompt task and declares event-driven transitions to other states.
13.3.1. Property PromptPack Specification > workflow > states > WorkflowState
Type objectRequired No Additional properties Not allowed Defined in #/$defs/WorkflowState
Description: A single state in the workflow state machine. References a prompt task and declares event-driven transitions to other states.
Property Pattern Type Deprecated Definition Title/Description + prompt_task No string No - Reference to a prompt key defined in the pack’s prompts object. - description No string No - Human-readable description of this state’s purpose. + on_event No object No - Map of event name to target state name. When the named event fires, the workflow transitions to the target state. - persistence No enum (of string) No - Whether conversation context is kept (persistent) or reset (transient) on entry. - orchestration No enum (of string) No - How this state is orchestrated: internal (runtime manages), external (caller manages), or hybrid.
13.3.1.1. Property PromptPack Specification > workflow > states > additionalProperties > prompt_task
Description: Reference to a prompt key defined in the pack’s prompts object.
Examples:
13.3.1.2. Property PromptPack Specification > workflow > states > additionalProperties > description
Description: Human-readable description of this state’s purpose.
13.3.1.3. Property PromptPack Specification > workflow > states > additionalProperties > on_event
Description: Map of event name to target state name. When the named event fires, the workflow transitions to the target state.
Example:
"escalate" : " human_handoff " ,
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No string No - -
13.3.1.3.1. Property PromptPack Specification > workflow > states > additionalProperties > on_event > additionalProperties
13.3.1.4. Property PromptPack Specification > workflow > states > additionalProperties > persistence
Type enum (of string)Required No
Description: Whether conversation context is kept (persistent) or reset (transient) on entry.
Must be one of:
13.3.1.5. Property PromptPack Specification > workflow > states > additionalProperties > orchestration
Type enum (of string)Required No
Description: How this state is orchestrated: internal (runtime manages), external (caller manages), or hybrid.
Must be one of:
“internal”
“external”
“hybrid”
13.4. Property PromptPack Specification > workflow > engine
Type objectRequired No Additional properties Any type allowed
Description: Optional runtime engine hints for workflow execution (e.g., timeout, concurrency settings).
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No - -
14. Property PromptPack Specification > agents
Type objectRequired No Additional properties Not allowed Defined in #/$defs/AgentsConfig
Description: Agent configuration mapping prompts to A2A-compatible agent definitions. Enables multi-agent orchestration via the Agent-to-Agent protocol.
Property Pattern Type Deprecated Definition Title/Description + entry No string No - Prompt key of the entry agent — the default agent that receives incoming requests. + members No object No - Map of prompt key to agent definition. Each key must match a prompt defined in the pack’s prompts object.
14.1. Property PromptPack Specification > agents > entry
Description: Prompt key of the entry agent — the default agent that receives incoming requests.
Examples:
14.2. Property PromptPack Specification > agents > members
Description: Map of prompt key to agent definition. Each key must match a prompt defined in the pack’s prompts object.
Property Pattern Type Deprecated Definition Title/Description - - additionalProperties No object No In #/$defs/AgentDef Agent definition for a single prompt, providing A2A Agent Card metadata. Overrides or extends the prompt’s own metadata for agent discovery.
14.2.1. Property PromptPack Specification > agents > members > AgentDef
Type objectRequired No Additional properties Not allowed Defined in #/$defs/AgentDef
Description: Agent definition for a single prompt, providing A2A Agent Card metadata. Overrides or extends the prompt’s own metadata for agent discovery.
Property Pattern Type Deprecated Definition Title/Description - description No string No - Agent description published in the A2A Agent Card. Overrides the prompt’s description if set. - tags No array of string No - Discovery tags for the agent, used by A2A registries and routers. - input_modes No array of string No - MIME types the agent accepts as input. Defaults to [“text/plain”] if omitted. - output_modes No array of string No - MIME types the agent can produce as output. Defaults to [“text/plain”] if omitted.
14.2.1.1. Property PromptPack Specification > agents > members > additionalProperties > description
Description: Agent description published in the A2A Agent Card. Overrides the prompt’s description if set.
Type array of stringRequired No
Description: Discovery tags for the agent, used by A2A registries and routers.
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
Each item of this array must be Description tags items -
Type array of stringRequired No Default ["text/plain"]
Description: MIME types the agent accepts as input. Defaults to [“text/plain”] if omitted.
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
14.2.1.4. Property PromptPack Specification > agents > members > additionalProperties > output_modes
Type array of stringRequired No Default ["text/plain"]
Description: MIME types the agent can produce as output. Defaults to [“text/plain”] if omitted.
Examples:
Array restrictions Min items N/A Max items N/A Items unicity False Additional items False Tuple validation See below
14.2.1.4.1. PromptPack Specification > agents > members > additionalProperties > output_modes > output_modes items
Generated using json-schema-for-humans on 2026-02-15 at 22:39:59 +0000