mini-tui
Terminal UI para agentes de codigo (TUI)
mini-tui es una terminal UI bonita para mini-swe-agent construida con OpenTUI (React + Bun). Solo parsea y reformatea lo que mini ya produce -tool calls (comandos bash) y sus salidas- en tarjetas, badges y banners: el harness corre completamente intacto, mini-tui spawnea mini como subproceso y lee el JSON de trayectoria que reescribe tras cada paso. Prompt bar multilinea estilo Claude Code, command palette con /, tarjetas shadcn-style por paso de bash, modos de salida collapsed/trimmed/expanded, /resume con sesiones en SQLite y titulo generado por IA, /connect BYOK con test de conexion real, selector de modelo y renderizado de markdown en la respuesta final. Su agente Rust (mini-agent-rs) gana en la ronda 5 del benchmark contra pi: 0,69x el tiempo agregado (204,5 s contra 295,0 s), 8 de 10 tareas y calidad 10/10 en ambos lados (0.41.0).

Tecnologías utilizadas
Front-end
Herramientas
Funcionalidades principales
Prompt bar estilo Claude Code
Barra multi-linea fijada abajo: el texto largo envuelve a la siguiente fila y la caja crece con tu texto (hasta 8 filas). Escribes la tarea (Alt+Enter o Ctrl+J para salto de linea) y sigues escribiendo seguimientos mientras el agente trabaja o despues de terminar: continuan la misma conversacion.

Command palette con /
Al teclear / se abre autocompletado en tiempo real sobre los comandos disponibles (/model, /settings, /help, /resume, /connect): filtras mientras escribes, navegas con flechas o raton y Enter/Tab rellena el comando sin enviarlo nunca por ti.

Una tarjeta tranquila por paso de bash
Cada tool call (comando + salida) en una tarjeta shadcn-style: neutros zinc, superficies redondeadas, un unico acento sutil y colores semanticos usados con moderacion. Bajo el prompt, un estado de carga animado mientras el agente trabaja, seguido del modelo, la ruta, la rama de git y las estadisticas del run.

Modos de salida: collapsed / trimmed / expanded
Elige como se muestran las salidas (solo una linea de contador, 2 lineas recortadas o todo expandido) desde el panel /settings; la preferencia se persiste entre runs y cada bloque se expande o contrae individualmente con la tecla e.

/resume - sesiones guardadas en SQLite
Cada conversacion se guarda en ~/.config/mini-tui/sessions.db con un titulo generado por IA (con fallback a tu prompt). /resume abre un modal con las sesiones iniciadas en la carpeta actual, paginadas y buscables por titulo; al restaurar, el siguiente prompt continua la misma conversacion con contexto completo via mini --resume.

/connect - proveedores BYOK
Todo el catalogo de MiniMax Code (Xiaomi MiMo, DeepSeek, OpenCode Go, Z.AI con GLM coding, MiniMax) mas OpenAI, Anthropic, Moonshot, Zhipu, Groq y OpenRouter. Pegas tu API key, eliges modelo y la conexion se prueba de verdad (un token consultando la propia capa litellm de mini) antes de guardarse en local.

Selector de modelo /model
Todos los modelos de los proveedores conectados se unen al picker: navegas con flechas o raton y el modelo seleccionado se aplica desde el siguiente paso. Tambien puedes escribir /model <id> para ir directo.

Markdown real en la respuesta final
El transcript muestra tu prompt tal cual como lo escribiste (nunca el template de tarea del harness), la respuesta final se renderiza como markdown de verdad (negrita, codigo, enlaces) y el echo redundante exit Submitted nunca se muestra.

/help - todo en un panel
Un unico panel con todos los comandos y teclas disponibles: /model, /resume, /connect, /settings, /help, /quit y los atajos de navegacion, para tener el mapa completo sin salir de la TUI.

Mas rapido que pi: 0,69x agregado y 8 de 10 tareas
Benchmark propio de cinco rondas contra el agente pi (mini-tui 0.41.0): mismas diez tareas, mismo modelo en los dos lados, secuencial y sin orquestacion. En la ronda 5 mini gana el agregado por primera vez - 204,5 s contra 295,0 s de pi (0,69x, un 30 % menos de tiempo) y 8 de 10 tareas, con la calidad intacta (10/10 PASS en ambos lados). El cuello no era el numero de turnos sino la duracion del peor: el turno mas largo de una corrida era de mediana el 30 % de su wall time, casi todo razonamiento - el peor escribio 19 427 caracteres de <think> para emitir una tool call de 193. La palanca fue el techo de salida por turno, barrido sobre todo el corpus (2048/3072/4096/8192) y fijado en 4096.

Videos del proyecto
Galería de imágenes
