letta-ai/letta-code/adding-models
- community
Checking that the SKILL.md file is still in the repository.
Guide for adding new LLM models to Letta Code. Use when the user wants to add support for a new model, needs to know valid model handles, or wants to update model-specific compatibility behavior. Covers runtime catalog sources, CI test matrices, and handle validation.
Install
npx vskill@latest install letta-ai/letta-code/adding-modelsSKILL.md
Adding Models
This skill guides you through adding a new LLM model to Letta Code.
Quick Reference
Key files:
src/agent/remote-model-catalog.ts- Runtime catalog loading and projectionsrc/agent/model-catalog.ts- Model lookup and compatibility aliases.github/workflows/ci.yml- CI test matrix (optional)src/tools/manager.ts- Toolset detection logic (rarely needed)
Workflow
Step 1: Find Valid Model Handles
First identify the agent source. These inputs are deliberately different:
| Agent source | Rows shown | Labels, presets, and capabilities | |
|---|---|---|---|
| Cloud hosted | GET /v1/models/catalog only | GET /v1/models/catalog | |
| Cloud organization BYOK | BYOK rows from GET /v1/models | Match to catalog metadata using provider metadata and model name; retain the BYOK handle for selection | |
| Local | pi-ai inventory | pi-ai metadata | |
| Custom App Server | Server runtime inventory | Server runtime metadata |
In Cloud mode, never use base/hosted rows from GET /v1/models to filter, supplement, delay, or provide a fallback for the hosted catalog. This once made GPT-4o appear in a selector even though the Cloud catalog deliberately omitted it. GET /v1/models remains necessary for organization-specific BYOK rows.
Query the Cloud hosted catalog to see hosted preset IDs, handles, and capabilities:
To inspect organization BYOK rows from a Cloud backend, query its model inventory and filter by provider_category:
Do not use this response as a second hosted catalog.
Common provider prefixes:
anthropic/- Claude modelsopenai/- GPT modelsgoogle_ai/- Gemini modelsgoogle_vertex/- Vertex AIopenrouter/- Various providers
Step 2: Update the Owning Catalog
Letta Code does not bundle a model catalog:
- Cloud hosted rows and presets come from the server's
GET /v1/models/catalog response.
- Cloud
GET /v1/modelscontributes only organization BYOK rows to selectors. - Local model inventory comes from pi-ai and the active provider runtimes.
Add the model at the source that owns it. A hosted preset belongs in the server catalog. A local provider model belongs in pi-ai or that provider's discovery runtime.
Only change this repository when the model needs Letta Code-specific compatibility behavior, such as preserving an established CLI alias or recognizing a new provider for toolset selection. Keep that logic narrow and derive the handle and metadata from the runtime catalog rather than copying model definitions here.
Step 3: Test the Model
Test with headless mode:
Example:
Step 4: Add to CI Test Matrix (Optional)
To include the model in automated testing, add it to .github/workflows/ci.yml:
Toolset Detection
Models are automatically assigned toolsets based on provider:
openai/*→codextoolsetgoogle_ai/*orgoogle_vertex/*→geminitoolset- Others →
defaulttoolset
This is handled by isGeminiModel() and isOpenAIModel() in src/tools/manager.ts. You typically don't need to modify this unless adding a new provider.
Common Issues
"Handle not found" error: The model handle is incorrect. Run the validation script to see valid handles.
Model works but wrong toolset: Check src/tools/manager.ts to ensure the provider prefix is recognized.
Security
- Security scanPassed, 96 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.skills/adding-models/SKILL.md
Popularity
- Repository stars
- 1,818
- Repository forks
- 185
- Repository npm downloads, 7 days
- 4,958
- 7-day trend score
- 57
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 19 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/letta-ai/letta-code/adding-models)