claude-maintain-models

Add new LLM models to Kiln's ml_model_list.py and open a tested pull request.

5.0k|376|Updated Jul 23, 2024
One-click install
npx skills add https://github.com/Kiln-AI/Kiln --skill claude-maintain-models
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: claude-maintain-models
Source: https://github.com/Kiln-AI/Kiln/tree/main/.agents/skills/claude-maintain-models
Command: npx skills add https://github.com/Kiln-AI/Kiln --skill claude-maintain-models

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Integrating a newly released AI model into Kiln's model registry is error-prone: slugs must be verified against authoritative catalogs, list ordering controls the UI dropdowns, capability flags interact in subtle ways, and paid integration tests must pass before a PR can ship. This Skill encodes the entire workflow so nothing is missed.

Core Features & Use Cases

  • Model Discovery: Systematically cross-references the LiteLLM catalog and models.dev per model family, plus targeted web searches, to find models available but not yet registered in Kiln.
  • Verified Integration: Adds ModelName enum entries, KilnModel entries with per-provider slugs, capability flags (vision, reasoning, thinking levels, structured output), and enforces the family/version/size ordering rules that drive the UI.
  • Tested Release Workflow: Runs paid pytest suites with API keys bridged from Kiln settings, distinguishes real failures from pre-existing flakes, then commits and opens a PR with a formatted test-results body.
  • Use Case: A user says "add Claude Opus 4.6 to Kiln" — the Skill reads the predecessor entry, verifies slugs across Anthropic/OpenRouter/Fireworks, edits ml_model_list.py, runs the paid test matrix, and opens a PR against main.

Quick Start

Ask the agent to add a specific new model, for example "Add Gemini 3.7 Flash to the Kiln model list and run the integration tests."

Frequently Asked Questions about claude-maintain-models

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new AI model to Kiln's model list?▼

Add a ModelName enum member and a KilnModel entry in libs/core/kiln_ai/adapters/ml_model_list.py, inheriting flags from the predecessor model. Verify every provider model_id against the LiteLLM catalog or official docs, then run the paid pytest suite and open a PR.

How do I find new LLM models not yet registered in Kiln?▼

Query both the LiteLLM model catalog and the models.dev API per family search term (claude, gpt, gemini, deepseek, qwen, and others), union the results, and cross-reference against the existing ModelName enum. Supplement with targeted web searches for very recent releases.

Why do Kiln model integration tests fail with missing API key errors?▼

Paid tests read API keys from environment variables, not from the Kiln app's settings.yaml, because a conftest fixture redirects the settings path. Export the key from Config.shared() into the environment, and pass both --runpaid and --ollama flags.

Should new reasoning models set reasoning_capable to true in Kiln?▼

No. Default new models to reasoning_capable=False even when catalogs report reasoning support, because adaptive-reasoning models sometimes return no reasoning and Kiln raises a RuntimeError when the flag is true. Thinking levels still work independently of this flag.

What ordering rules apply to Kiln's built_in_models list?▼

Families must be contiguous blocks, versions run newest to oldest within a family, and sizes run big to small within a version. Net-new families go at the end of the list, since list order directly determines the model dropdowns shown in the UI.