Quick start
1
Create a preset
Open Dashboard -> Settings -> Presets and create a preset with a clear slug, such as
release-summary. Add only the defaults that should be shared across callers.2
Reference the preset in a request
Keep the caller focused on the user input while the preset supplies stable prompt, parameter, and routing defaults.
3
Check the routing result
Open the request in Gateway -> Usage to confirm which defaults were applied and which provider served it.
What a preset can include
- A system prompt to prepend to every request.
- Allowed models or model families.
- Provider allow/ignore lists for routing preferences.
- Default parameters (temperature, top_p, max_tokens, and similar settings).
- Optional reasoning defaults for supported models.
@ to keep them easy to recognize.
Invoke a preset only through the request’s model field. Phaseo does not expose a separate preset request field.
- Private and workspace presets use
@{slug}and resolve inside the API key’s workspace. - Public presets use
@{username}/{slug}and can resolve from any workspace. For example,@octavia/release-summary.
Versions and marketplace forks
Saving changes updates a private draft. Use Publish new version when those changes are ready; Phaseo creates an immutable numbered release while retaining every earlier version for review. Preset owners can choose how release labels are displayed:- Sequential:
v1,v2,v3. - Semantic Versioning: explicit SemVer labels such as
1.2.0,2.0.0-beta.1, or1.4.2+build.7. - Date versioning:
YYYY.MM.DD, with a numeric suffix when multiple releases are published on the same date, such as2026.08.02.2.
How preset merging works
When a request resolves with a preset in gateway context, the preset is applied before provider routing:- Default parameters only fill fields that are missing in the request body. They do not overwrite values already provided by the caller.
- If the request already has a system message, the preset prompt is prepended. If the request uses an Anthropic-style
systemfield, the preset prompt is prepended there instead. - Provider allow/ignore lists are applied before provider selection, so they narrow the fallback pool instead of acting as a cosmetic label.
- Requests outside the preset’s allowed model list are rejected early instead of being silently rerouted.
Current public preset surface
The dashboard preset flow is intentionally scoped to a stable, explicit subset of request shaping:- system prompt injection
- model allowlists
- provider allow/ignore routing constraints
- decoding and generation defaults
- reasoning defaults
Manage presets
Create and manage presets in Dashboard -> Settings -> Presets. Use separate slugs when workflows need meaningfully different prompt, routing, or caching behavior.When to use presets
- Standardize system prompts across multiple services.
- Constrain routing to approved providers for compliance.
- Keep default parameters consistent across environments.
- Give migration projects one durable place to carry prompt, routing, and parameter defaults while the application code stays mostly unchanged.