model.list
List available models across all enabled providers or filter by a specific provider.Request
Parameters
Optional provider filter:
"openai", "openrouter", or "antigravity"Response
Array of enabled provider names
Array of available model objects. Each model includes:
id- Model identifiername- Display nameprovider- Provider namethinking_levels- Supported thinking levels- Additional provider-specific metadata
Currently selected model ID
Currently selected thinking level:
"low", "medium", "high", or "extended"Currently selected provider
Selected OpenRouter provider (if using OpenRouter)
Example
model.select
Select a model and thinking level for future conversations. Optionally compress an existing session.Request
Parameters
Model identifier (must exist in the provider’s catalog)
Provider name:
"openai", "openrouter", or "antigravity"Thinking level:
"low", "medium", "high", or "extended"OpenRouter routing provider (only for OpenRouter models)
Session ID to compress (required if
compress_immediately is true)If true, compress the specified session’s history to fit the new model’s context window
Response
The selected model ID
The selected provider
The selected thinking level (may be normalized for the model)
The selected OpenRouter provider (if applicable)
Compression details (if
compress_immediately was true)Whether compression was requested
Whether compression was actually applied
Reason:
"none", "auto", or "provider_switch"Token count before compression
Token count after compression
Model’s context window size
Target token limit for compression
History anchor index before compression
History anchor index after compression
Example (Basic)
Example (With Compression)
Thinking levels may be automatically adjusted based on model capabilities. For example, if a model doesn’t support
"extended" thinking, it will be normalized to "high".model.openrouter.providers
List available routing providers for a specific OpenRouter model.Request
Parameters
OpenRouter model ID
Response
The model ID
Array of provider names available for this model
Example
This method requires an OpenRouter API key to be configured via
auth.set.openrouter_key.