Agentes de IA

Kimi Code CLI

Kimi Code — Configuración

Archivos y ubicaciones

ArchivoPara qué sirve
~/.kimi-code/config.tomlConfiguración principal del usuario (se crea en el primer arranque)
~/.kimi-code/tui.tomlPreferencias de la interfaz de terminal
~/.kimi-code/mcp.jsonDefiniciones de servidores MCP (ver MCP)
<raíz-del-proyecto>/.kimi-code/local.tomlLocal al proyecto: sólo [workspace] additional_dir (rutas absolutas; añádelo al .gitignore)

KIMI_CODE_HOME mueve toda la raíz de datos (~/.kimi-code/) — se resuelve antes que cualquier otra configuración. Ojo: los recursos genéricos compartidos entre herramientas (~/.agents/skills/, ~/.agents/AGENTS.md) viven en el home real del sistema y no se mueven con KIMI_CODE_HOME.

La documentación lo dice explícitamente: “el CLI lee actualmente un único archivo de configuración de usuario y no tiene mecanismo de configuración por proyecto” (más allá de local.toml para los directorios del workspace). Las claves TOML van en snake_case; entrecomilla las que contengan puntos, por ejemplo [models."gpt-4.1"].

Lo esencial de config.toml

default_model = "k3"
default_permission_mode = "manual"   # manual | yolo | auto
default_plan_mode = false
merge_all_available_skills = true
extra_skill_dirs = ["~/team-skills"]
extra_agent_dirs = ["~/team-agents"]
builtin_product_skills = true
telemetry = true

[providers.kimi]
type = "kimi"
api_key = "sk-..."

[models."k3"]
provider = "kimi"
model = "k3"
max_context_size = 256000

[secondary_model]
default_model = "kimi-for-coding-highspeed"
force = false

[thinking]
enabled = true
effort = "high"        # low | medium | high | xhigh | max

[loop_control]
max_steps_per_turn = 0             # sin valor o 0 = sin límite
max_attempts_per_step = 10

[permission]
dangerous_command_guard = true

[[permission.rules]]
decision = "deny"
pattern = "Bash(rm -rf*)"
reason = "nunca borrar en recursivo sin preguntar"

[[hooks]]
event = "PreToolUse"
matcher = "Bash"
command = "~/bin/my-hook.sh"
timeout = 30

Notas sobre los campos clave:

  • providers: type (obligatorio; uno de kimi, anthropic, openai, openai_responses, google-genai, vertexai), api_key, base_url, oauth (lo inyecta el login), env (subtabla con nombres de clave convencionales como respaldo) y custom_headers.
  • models: provider (obligatorio), model (obligatorio), max_context_size (obligatorio), max_input_size, capabilities, default_effort, base_url por modelo, display_name y más.
  • secondary_model: el pool de modelos para subagentes (estable desde la 0.40.0, activado por defecto); con force = true todos los subagentes quedan fijados a default_model.
  • permission.rules: decision (allow/deny/ask), scope, pattern (NombreHerramienta o NombreHerramienta(patrón-de-argumento)) y reason; gana la primera que coincida. Ver Permisos.
  • hooks: sólo se admiten event, matcher, command y timeout (de 1 a 600 s, 30 por defecto). Los hooks son fail-open — no los uses como única barrera de seguridad.

Otras tablas documentadas: [background], [subagent], [swarm], [mcp], [identity], [tools] (listas globales de permitidos y denegados), [image], [services.moonshot_search], [services.moonshot_fetch] y [token_counting].

tui.toml

theme = "auto"            # auto | dark | light | custom
render_latex = true
disable_paste_burst = false

[editor]
command = "code --wait"

[notifications]
enabled = true
notification_condition = "unfocused"   # unfocused | always

[upgrade]
auto_install = true

[status_line]
items = ["mode", "goal", "model", "tasks", "cwd", "git", "tips"]

/reload-tui aplica los cambios de tui.toml al momento; /reload recarga los dos archivos de configuración sin reiniciar.

Variables de entorno

Las más destacadas (la lista completa está en la página de variables de entorno):

VariablePara qué sirve
KIMI_CODE_HOMEMueve toda la raíz de datos
KIMI_DISABLE_TELEMETRYCon 1/true/yes/y desactiva la telemetría anónima
KIMI_MODEL_NAME / _API_KEY / _PROVIDER_TYPE / _BASE_URL / _MAX_CONTEXT_SIZECrean un proveedor temporal en memoria (tienen prioridad sobre default_model; -m sigue mandando)
KIMI_CODE_OAUTH_HOSTHost de OAuth (por defecto https://auth.kimi.com)
KIMI_CODE_BASE_URLURL base de la API de coding (por defecto https://api.kimi.com/coding/v1)
KIMI_LOG_LEVELoff/error/warn/info/debug (info por defecto)
KIMI_CODE_DANGEROUS_COMMAND_GUARDCon false desactiva la protección contra comandos peligrosos
KIMI_SUBAGENT_TIMEOUT_MSTimeout de los subagentes (por defecto 7200000 = 2 h)
KIMI_MCP_STARTUP_TIMEOUT_MS / KIMI_MCP_TOOL_TIMEOUT_MSTimeouts de MCP
KIMI_SHELL_PATHRuta personalizada de Git Bash en Windows
KIMI_DISABLE_CRONCon 1 desactiva las herramientas de cron
HTTP_PROXY / HTTPS_PROXY / ALL_PROXY / NO_PROXYSoporte de proxy estándar (SOCKS mediante el esquema en ALL_PROXY)

Las credenciales salen de config.toml, no del entorno del shell. Las variables de entorno del shell NO se leen para las credenciales de los proveedores (excepciones: GOOGLE_APPLICATION_CREDENTIALS, que lee directamente el SDK de Google, y la familia KIMI_MODEL_*). Prioridad de credenciales: [providers.<nombre>].api_key > subtabla [providers.<nombre>.env] > fallo al arrancar.

Precedencia de las sobrescrituras

No es una pila simple, sino tres papeles distintos:

  1. KIMI_CODE_HOME localiza todo lo demás (se resuelve antes que cualquier otra cosa).
  2. Los interruptores en tiempo de ejecución (por ejemplo KIMI_DISABLE_TELEMETRY) desactivan subsistemas al margen de la configuración (semántica de “desactivar además”).
  3. Las variables de endpoint y diagnóstico (KIMI_CODE_OAUTH_HOST, KIMI_CODE_BASE_URL, KIMI_LOG_LEVEL) se leen al inicializar cada subsistema.

Para los parámetros normales: opciones del CLI > archivo de configuración del usuario. Algunas variables de entorno concretas sobrescriben campos concretos allí donde está documentado. Valida tus archivos con kimi doctor (Comandos de terminal).


Última verificación: 2026-09-07

Fuentes oficiales:

Las herramientas de IA para programar evolucionan rápido. Si encuentras información desactualizada, abre un issue o un pull request.