letta/letta-configuration/SKILL.md
Configure LLM models and providers for Letta agents and servers. Use when setting model handles, adjusting temperature/tokens, configuring provider-specific settings, setting up BYOK providers, or configuring self-hosted deployments with environment variables.
npx skillsauth add letta-ai/skills letta-configurationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Complete guide for configuring models on agents and providers on servers.
Agent-level (model configuration):
Server-level (provider configuration):
Not covered here: Model selection advice (which model to choose) - see agent-development skill.
Models use a provider/model-name format:
| Provider | Handle Prefix | Example |
|----------|---------------|---------|
| OpenAI | openai/ | openai/gpt-4o, openai/gpt-4o-mini |
| Anthropic | anthropic/ | anthropic/claude-sonnet-4-5-20250929 |
| Google AI | google_ai/ | google_ai/gemini-2.0-flash |
| Azure OpenAI | azure/ | azure/gpt-4o |
| AWS Bedrock | bedrock/ | bedrock/anthropic.claude-3-5-sonnet |
| Groq | groq/ | groq/llama-3.3-70b-versatile |
| Together | together/ | together/meta-llama/Llama-3-70b |
| OpenRouter | openrouter/ | openrouter/anthropic/claude-3.5-sonnet |
| Ollama (local) | ollama/ | ollama/llama3.2 |
from letta_client import Letta
client = Letta(api_key="your-api-key")
agent = client.agents.create(
model="openai/gpt-4o",
model_settings={
"provider_type": "openai", # Required - must match model provider
"temperature": 0.7,
"max_output_tokens": 4096,
},
context_window_limit=128000
)
| Setting | Type | Description |
|---------|------|-------------|
| provider_type | string | Required. Must match model provider (openai, anthropic, google_ai, etc.) |
| temperature | float | Controls randomness (0.0-2.0). Lower = more deterministic. |
| max_output_tokens | int | Maximum tokens in the response. |
client.agents.update(
agent_id=agent.id,
model="anthropic/claude-sonnet-4-5-20250929",
model_settings={"provider_type": "anthropic", "temperature": 0.5},
context_window_limit=64000
)
Note: Agents retain memory and tools when changing models.
For OpenAI reasoning models and Anthropic extended thinking, see references/provider-settings.md.
# Add provider via API
python scripts/setup_provider.py --type openai --api-key sk-...
# Generate .env for Docker
python scripts/generate_env.py --providers openai,anthropic,ollama
# Validate credentials
python scripts/validate_provider.py --provider-id provider-xxx
# Via REST API
curl -X POST http://localhost:8283/v1/providers \
-H "Content-Type: application/json" \
-d '{
"name": "My OpenAI",
"provider_type": "openai",
"api_key": "sk-your-key-here"
}'
openai, anthropic, azure, google_ai, google_vertex, ollama, groq, deepseek, xai, together, mistral, cerebras, bedrock, vllm, sglang, hugging_face, lmstudio_openai
For detailed configuration of each provider, see:
references/common_providers.md - OpenAI, Anthropic, Azure, Googlereferences/self_hosted_providers.md - Ollama, vLLM, LM Studioreferences/all_providers.md - Complete referencereferences/environment_variables.md - Docker/self-hosted setupBefore configuring:
provider/model-name formatmodel_settings includes required provider_type fieldcontext_window_limit is set at agent level, not in model_settingsModel configuration:
scripts/basic_config.py - Basic model configurationscripts/basic_config.ts - TypeScript equivalentscripts/change_model.py - Changing models on existing agentsscripts/provider_specific.py - OpenAI reasoning, Anthropic thinkingProvider configuration:
scripts/setup_provider.py - Add providers via REST APIscripts/validate_provider.py - Check provider credentialsscripts/generate_env.py - Generate .env for Dockertesting
Navigates archived ChatGPT or Claude-style conversation exports and a MemFS reference archive on demand. Use when recalling what a past assistant knew, searching old conversations, rendering specific chats, seeding reference memory from export sidecars, or mining historical context without doing a full import.
testing
Migrates deprecated Letta Filesystem folders/files to MemFS using markdown document corpora, chunking, local lexical search, and QMD semantic search via the memfs-search skill. Use when replacing folders.files.upload, working with PDFs or document QA, or emulating open_file, grep_file, and search_file behavior.
data-ai
Configures Letta agent compaction settings and custom summarization prompts. Use when a user asks to change an agent's compaction prompt, improve summaries after context eviction, tune sliding-window or all-message compaction, or design companion/coding-agent continuity summaries.
development
Semantic search over agent memory files. Use when you need to find conceptually related memory blocks, discover forgotten reference files, check what you already know before creating new memory, or search beyond exact keyword matching. Currently supports QMD (local, no API keys).