Cap 18: Status Line y UX

Por: Artiko
claude-codestatus-lineuxthemeskeybindings

Status Line

La status line es una barra de información personalizable que se muestra en la parte inferior del terminal durante la sesión de Claude Code.

Configurar status line

# Claude genera una configuración basada en tu shell
/statusline

Configuración manual

En settings.json:

{
  "statusLine": {
    "type": "command",
    "command": "echo 'modelo: opus | contexto: 45%'"
  }
}

Datos disponibles

La status line recibe datos del contexto actual:

CampoDescripción
context_window.used_percentagePorcentaje de contexto usado
context_window.remaining_percentagePorcentaje restante
current_usageUso actual de tokens
exceeds_200k_tokensSi excede 200K tokens
workspace.added_dirsDirectorios de trabajo

Ejemplo avanzado

#!/bin/bash
# .claude/scripts/statusline.sh
CONTEXT=$(echo "$1" | jq -r '.context_window.used_percentage')
MODEL=$(echo "$1" | jq -r '.model // "default"')
echo "[$MODEL] ctx: ${CONTEXT}%"
{
  "statusLine": {
    "type": "command",
    "command": ".claude/scripts/statusline.sh"
  }
}

Output Styles

Controla cómo Claude presenta sus respuestas:

EstiloDescripciónMejor para
ExplanatoryExplica cada paso y decisiónCodebase nuevo, onboarding
LearningCoaching — enseña mientras trabajaAprendizaje, mentoring
CustomInstrucción personalizadaTu preferencia

Configurar

{
  "outputStyle": "Explanatory"
}

O con una instrucción custom:

{
  "outputStyle": "Responde siempre en español. Sé conciso. No expliques lo obvio."
}

Themes

Personalizar el tema visual:

/theme

Permite elegir entre los temas disponibles para la interfaz del terminal.

Spinner

spinnerVerbs

Personaliza los verbos que aparecen mientras Claude trabaja:

{
  "spinnerVerbs": [
    "Pensando",
    "Analizando",
    "Investigando",
    "Programando",
    "Refactorizando"
  ]
}

spinnerTips

Tips que aparecen junto al spinner:

{
  "spinnerTipsEnabled": true,
  "spinnerTipsOverride": [
    "Tip: usa /compact al 50% del contexto",
    "Tip: /rewind para retroceder cambios",
    "Tip: Esc Esc para undo rápido"
  ]
}

Keybindings

Personalizar atajos de teclado:

/keybindings

Los keybindings se guardan en ~/.claude/keybindings.json:

{
  "submit": "Enter",
  "newline": "Shift+Enter",
  "abort": "Escape",
  "rewind": "Escape Escape"
}

Configuración del terminal

# Configurar Shift+Enter para nueva línea
/terminal-setup

Fast Mode

El fast mode usa el mismo modelo (Opus 4.6) pero con output más rápido:

# Alternar fast mode
/fast

# O al iniciar
claude --fast

No cambia de modelo — optimiza la velocidad de generación.

Effort Level

Controla cuánto esfuerzo pone el modelo en cada respuesta:

NivelDescripción
HighMáximo esfuerzo (default)
MediumBalance esfuerzo/velocidad
LowRespuestas rápidas y directas
# Cambiar esfuerzo
/model    # Seleccionar nivel

O via env var:

CLAUDE_CODE_EFFORT_LEVEL=medium claude

Vim Mode

Para usuarios de Vim:

/vim

Habilita keybindings estilo Vim para edición de prompts.

Barra de progreso

Habilitar/deshabilitar la barra de progreso del terminal:

{
  "terminalProgressBarEnabled": true
}

Resumen de personalización

AspectoComando/Setting
Status line/statusline o statusLine en settings
Tema visual/theme
Output styleoutputStyle en settings
SpinnerspinnerVerbs, spinnerTipsOverride
Keybindings/keybindings
Fast mode/fast
Vim mode/vim
Terminal/terminal-setup

Siguiente: Voice Mode y Remote