ask-term
CLI animada para múltiples LLMs con sesiones persistentes — chatea con GPT, Claude, Gemini u Ollama directamente desde tu terminal.
Screenshots
Interfaz de chat en terminal iniciando una nueva sesión con Google Gemini
Sistema de gestión de sesiones y configuración de proveedores múltiples
Overview
ask-term es una interfaz orientada al terminal para IA conversacional. Proporciona una experiencia CLI animada e interactiva para consultar múltiples proveedores de LLM — incluyendo OpenAI, Anthropic Claude, Google Gemini y modelos locales mediante Ollama — sin tener que salir de tu entorno de trabajo en la terminal. Las sesiones son persistentes: tu historial de conversación se guarda localmente para que puedas retomar exactamente donde lo dejaste. Cambia de proveedor en mitad de la sesión, compara respuestas o mantén una conversación de codificación extensa que sobreviva el reinicio de la terminal. Estado: Beta. Este paquete puede contener errores no documentados y funciones incompletas. Abierto a feedback y contribuciones.
Inicio Rápido
Requiere Python 3.9+. Las claves API para los proveedores remotos deben estar configuradas en las variables de entorno.
Architecture
ask-term es un paquete de Python de un solo comando que se ejecuta completamente en el lado del cliente. Adaptadores de Proveedores: Cada proveedor LLM (OpenAI, Claude, Gemini, Ollama) tiene un adaptador ligero que implementa una interfaz de streaming en común. Añadir nuevos proveedores solo requiere implementar dos métodos: stream_chat() y list_models(). Almacén de Sesiones: Las conversaciones persisten como archivos JSON en ~/.ask-term/sessions/. Cada sesión guarda el historial completo de mensajes, el proveedor, el modelo y los metadatos. Las sesiones se indexan por un "slug" corto fácil de leer. Renderizado: El renderizador de la terminal usa códigos de escape ANSI para los efectos de animación y la salida en streaming. Funciona con cualquier emulador de terminal compatible con POSIX sin requerir dependencias adicionales. Punto de Entrada: Un único comando ask-term te sitúa en un selector de sesiones interactivo, o puedes enviarle el prompt directamente para consultas puntuales.