Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Official-source-led manual for the TUI `kimi` template.
.claude/skills/lingtai-ai-preset-skill-kimi/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | -31% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 140% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -23% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 31% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 28% | 0% |
kimikimiPreset() in tui/internal/preset/preset.go ships Kimi Code model kimi-for-coding at the exact OpenAI-compatible endpoint https://api.kimi.com/coding/v1 with KIMI_CODE_API_KEY. The manifest has no built-in vision capability, so this shipped preset remains unwired for LingTai-side vision.
The TUI preset editor's base_url row offers three options (ProviderRegionURLs["kimi"]):
https://api.kimi.com/coding/v1 (the template default).https://opencode.ai/zen/go/v1. This is the only rowthat implies a credential: selecting it sets api_key_env to OPENCODE_GO_API_KEY (the shared OpenCode Go account) and saving keeps that slot instead of minting a numbered one.
Selecting it clears base_url so Enter opens an inline edit. Custom implies no api_key_env, and the editor deliberately leaves the current slot alone on this row — your endpoint keeps whatever credential it actually uses. If you arrived here from the OpenCode Go row the preset is still pointing at OPENCODE_GO_API_KEY; change it in the preset JSON if your endpoint takes a different key. A saved edited built-in gets stampAutoEnvVar's numbered slot instead, because an empty base_url is not a row-declared cross-provider account.
Kimi Code implies no api_key_env, so saving an edited built-in on that row yields a host-stamped numbered slot rather than overwriting the provider default. The slot name is derived from the PROVIDER name, not from ProviderDefaultEnv, so it is KIMI_1_API_KEY — not KIMI_CODE_1_API_KEY (AutoEnvVarName, preset.go). Cycling off OpenCode Go restores the slot that was in place before it was selected, so the choice is reversible.
The model row is FREE TEXT for kimi — there is deliberately no entry in the editor's providerModels picker (tui/internal/tui/preset_editor.go). Moonshot's catalog is wider than any list the TUI can verify, and a picker would let one → overwrite a typed id with the first list entry. Type the id you want:
kimi-for-coding (thetemplate default).
kimi-k3and kimi-k2.7-code — the latest two generations under the TUI's model-curation rule (tui/CONTRACT.md), which is why no older K2.x id is written down here. That is a TUI documentation decision, not a statement about what the endpoint serves: other Moonshot ids remain typeable on this free-text row. Check the OpenCode Go model list for what is currently served.
Current Kimi Code/K2.7 evidence describes native text, image, and video input, but the literal kimi-for-coding endpoint mapping was not mechanically pinned by the reviewed provider model table. Treat that mapping as conditional rather than claiming provider-wide text-only or unconditional direct support. Read the official Kimi Code docs, K2.7 Code quickstart, and provider configuration when the model or endpoint changes. This manual makes no automatic fallback or MCP claim; do not guess credentials or silently switch providers. Verify current wiring in preset.go.
For base URL/API-compat/model/capability declaration shape versus credentials, see reference/operations/endpoint-capabilities/SKILL.md.
Other measured skills in the registry, with their headline benchmark lift.