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.