Use Haiku: un prompt de Claude Code con Haiku
Empieza un prompt de Claude Code con _ y ese turno se ejecuta en Haiku, con una pista visible en cada paso.
Permisos
- Lee tus promptsPuede ver lo que escribes y la transcripción de la conversación (prompt.* / session.append / session.messages).
- Modifica la interfazDibuja en la interfaz de Claude Code: bandas, paneles, texto de estado, avisos (ui.render / $.ui.*).
- probado con
- v2.1.303
- última prueba
- requiere
- Claude Code ≥ 2.1.287
- superficies
- spinner, transcripción, estado
- código fuente
- Miguel Ángel Durán (midudev) (MIT)
Instalar dentro de Claude Code:
/plugin install use-haiku --marketplace midudev/better-claude¿Qué hace este mod?
Use Haiku es un mod de la comunidad de Miguel Ángel Durán (midudev), parte de su colección better-claude. Permite enviar un prompt de Claude Code con Haiku sin cambiar el modelo de la sesión: empieza el prompt con _ y ese turno se ejecuta en claude-haiku-5-5. Claude recibe el texto sin el _, y cada petición de modelo del turno va a Haiku, incluidas las de los subagentes que el turno inicia. El siguiente prompt vuelve al modelo de la sesión.
El mod hace visible el cambio en tres sitios. Mientras escribes, el _ aparece en negrita en la caja del prompt y una línea debajo dice ⚡ this prompt runs on Haiku. Mientras corre el turno, la palabra del spinner lleva el sufijo on Haiku. Al terminar, una línea bajo la respuesta nombra el modelo que informa la API, por ejemplo ⚡ Answered by claude-haiku-5-5, o un aviso si respondió otro. El prompt también lleva una nota que tú no ves y que le dice al modelo que es Haiku, así que "¿qué modelo eres?" recibe la respuesta correcta. Sirve para preguntas rápidas y consultas pequeñas en las que basta un modelo menor.
Solo cuentan tus propios prompts: escritos, enviados desde el móvil, claude -p "_…", un /loop programado o un plugin que los envía por ti, como After. El README del autor requiere una versión de Claude Code con mods (2.1.289 o posterior).
Demo
La grabación inicia Claude Code con el mod cargado en el pequeño proyecto de demostración y escribe _what is the name of this project? answer in one short sentence. Mientras se escribe, la línea bajo la caja muestra ⚡ this prompt runs on Haiku. Tras Enter, el spinner dice Haiku…. Cuando termina el turno, Claude responde que el proyecto se llama demo-app y bajo la respuesta aparece ⚡ Answered by claude-haiku-5-5. La sesión de la demo ya usa Haiku, así que el modelo no cambia en este clip; lo que se ve es la respuesta visual del mod en cada lugar.
Instalación
Usa cualquiera de los métodos del bloque de instalación; instalan directamente desde el marketplace del propio autor, better-claude. El mod está activo desde el siguiente inicio de sesión. No hay nada que configurar: escribe _ antes de un prompt.
$ install use-haiku
Requiere Claude Code ≥ 2.1.287
Se instala desde el marketplace del autor: midudev/better-claude
1.Una línea, dentro de Claude Code
/plugin install use-haiku --marketplace midudev/better-claudePégala en una sesión abierta (v2.1.275+). Claude Code te pedirá primero añadir el marketplace.
2.Desde tu shell
claude plugin marketplace add midudev/better-claude claude plugin install use-haiku@better-claudeDespués ejecuta /reload-plugins en cualquier sesión que ya esté abierta.
3.Pruébalo sin instalarlo
git clone https://github.com/midudev/better-claude claude --plugin-dir ./better-claude/plugins/use-haikuCarga el mod solo para una sesión. No se añade nada a tu configuración.
Cómo funciona
El mod es un único módulo de hooks, hooks/register.tsx. En prompt.submit, un prompt en reposo que empieza por un solo _ pierde la marca, recibe la nota para el modelo y reclama el siguiente turno. Luego turn.step reescribe el modelo de cada petición de ese turno:
// Every request of a Haiku turn goes to Haiku: the main loop's and those of the subagents it started.
on('turn.step', async function* ($, e, next) {
const isHaiku = e.agentId === undefined
? e.turnId === (await read($, haikuTurn))
: (await read($, haikuAgents)).includes(e.agentId)
return yield* next(isHaiku ? { ...e, model: HAIKU } : e)
})El id del turno de Haiku y los de sus subagentes viven en $.state, así que una recarga a mitad de turno los conserva. agent.spawn inicia en Haiku al subagente de un turno de Haiku y recuerda su id. turn.complete termina el turno de Haiku y añade la línea bajo la respuesta, solo en una sesión interactiva, de modo que la salida de claude -p queda limpia. Dos hooks ui.render dibujan el sufijo del spinner y la pista bajo el prompt.
Personalízalo
No hay opciones. El nombre del modelo (HAIKU), la marca (MARK) y el color de resaltado son constantes al inicio de register.tsx; para cambiarlos, edita tu propia copia y cárgala con claude --plugin-dir.
Permisos y seguridad
Antes de ejecutarlo leímos todos los archivos que el plugin puede ejecutar: hooks/hooks.json, hooks/register.tsx, las declaraciones de tipos, el manifiesto y las pruebas, además del package.json, el marketplace.json y el LICENSE del repositorio. No hay script de instalación, dependencias, código empaquetado ni binarios, y no encontramos caracteres Unicode ocultos.
Hooks de control: prompt.submit y agent.spawn reescriben lo que se envía y el modelo de un subagente. Es lo que describe el README: se quita el _, se añade una nota al contexto del prompt y se fija el modelo del turno de Haiku. La nota dice: "The person sent this prompt to Haiku: you are claude-haiku-5-5 while you answer it". Validate indica que ambos hooks no tienen .catch. Cambia la interfaz abarca la pista bajo el prompt, la etiqueta del spinner, el _ en negrita y la línea bajo la respuesta. Aparece un toast si envías un prompt con _ a mitad de turno.
El mod solo usa $.state y $.ui. No usa la red, no ejecuta procesos, no escribe archivos, no lee variables de entorno ni ejecuta un daemon, y no tiene telemetría. claude plugin validate no informó de errores ni avisos, y las 10 pruebas del autor pasaron en Claude Code 2.1.303. La licencia es MIT (archivo LICENSE presente).
- Lee tus prompts
- Puede ver lo que escribes y la transcripción de la conversación (prompt.* / session.append / session.messages).
- Modifica la interfaz
- Dibuja en la interfaz de Claude Code: bandas, paneles, texto de estado, avisos (ui.render / $.ui.*).
Compatibilidad y solución de problemas
Comprobado con Claude Code 2.1.303 en macOS (validate, pruebas y grabación). Si un prompt no se ejecuta en Haiku:
- El primer carácter es un solo
_y hay texto después. - Claude está en reposo. Un prompt enviado a mitad de turno conserva el modelo actual, como dice la pista.
- El prompt viene de ti, no de un canal, otra sesión o una tarea en segundo plano.
- Cargaste el plugin (
/pluginlo lista) y empezaste una sesión nueva tras instalarlo. - Si la línea bajo la respuesta avisa de que respondió otro modelo, la API no atendió la petición; el aviso muestra el nombre del modelo.
Preguntas frecuentes
- ¿El mod cambia el modelo de mi sesión?
- No. Solo el turno que empieza por _ va a claude-haiku-5-5. El siguiente prompt vuelve al modelo que use la sesión, sin cambiar ningún ajuste.
- ¿Qué pasa si escribo un prompt con _ mientras Claude sigue trabajando?
- El texto se integra en el turno en curso o se pone en cola detrás, así que conserva el modelo actual. La línea bajo el prompt te avisa antes de enviarlo y un toast te lo dice después.
- ¿Los subagentes también corren en Haiku?
- Sí. Los subagentes que inicia un turno de Haiku se crean en Haiku y siguen en él aunque el turno termine. Los forks y los agentes de workflow se atrapan en cada petición, y los compañeros de equipo mantienen su propio modelo.
- ¿Por qué aparece un aviso Asked for Haiku, but … answered?
- Tras un turno interactivo de Haiku, el mod lee el nombre del modelo en el uso que devolvió la API. Si no contiene "haiku", muestra un aviso con ese nombre en lugar de la línea habitual "Answered by".
- ¿Puedo seguir escribiendo nombres como __init__.py?
- Sí. Un doble guion bajo al principio no es una marca, y un _ solo tampoco. Prompts como __init__.py fails to import se envían sin cambios.
# Mods relacionados
DestacadoAfter
Cola de prompts para Claude Code: /after ejecuta la siguiente tarea cuando termina la actual, sin desviarla.
- sobre el prompt
- panel
- aviso
- estado
- Llama al modelo (usa tu cuota)
- Lee tus prompts
- Modifica la interfaz
- Añade comandos/herramientas
- Guarda datos
probado con v2.1.303
DestacadoContext Bar
La ventana de contexto de Claude Code como una barra apilada sobre el prompt, un color por categoría, con tokens.
- sobre el prompt
- Modifica la interfaz
- Añade comandos/herramientas
- Guarda datos
probado con v2.1.291
Más en Temporizadores, tareas y standups, Contexto, cuota y coste.