miaw-ai-desktop
miaw-ai-desktop: app de escritorio Electron para Windows con interfaz flotante de chat y superficie de comandos compatible para chat, historial, imágenes y capturas.
¿Qué es miaw-ai-desktop?
miaw-ai-desktop es una app de escritorio basada en Electron, priorizada para Windows, que proporciona una interfaz de chat flotante simple para “Miaw”. El proyecto se centra en recrear la interfaz de usuario React existente de Miaw y preservar una superficie de comandos compatible (incluyendo shims de cliente compatibles con Tauri) para que la app interactúe con comandos de backend soportados para chat, historial, imágenes y capturas de pantalla.
El repositorio también documenta la configuración local mediante un archivo .env, soporta un endpoint OpenAI compatible con LiteLLM como proveedor de modelos predeterminado, e incluye instrucciones de compilación para desarrollo, producción y empaquetado de EXE para Windows.
Características principales
- Interfaz de ventana de chat flotante (shell de Electron) diseñada para reflejar la interfaz Miaw basada en React existente, incluyendo una tarjeta de configuración cuando el backend no está disponible.
- Soporte para ícono en la bandeja y acceso directo global (Ctrl+Shift+Space) para mostrar/ocultar la superposición de chat.
- Shims de cliente Tauri para módulos
@tauri-apps/api(core, event, window, dpi) para que el frontend reutilice llamadas internas existentes. - Superficie de comandos para streaming de chat y gestión de conversaciones, incluyendo
ask_ollama,cancel_generation,reset_conversation, además de operaciones de historial de conversaciones comosave_conversation,persist_message,list_conversations,load_conversationydelete_conversation. - Comandos para imágenes y capturas de pantalla, incluyendo comandos para guardar/eliminar imágenes y comandos de captura de pantalla (
capture_screenshot_command,capture_full_screen_command). - Hooks de ventana/evento y utilidades varias como
notify_frontend_ready,notify_overlay_hiddenyopen_url; másget_model_config.
Cómo usar miaw-ai-desktop
- Clona el repositorio y copia la plantilla de entorno proporcionada: copia
.env.examplea.env. - Edita
.envpara apuntar a tu proveedor de modelos. Los valores predeterminados documentados usan un endpoint OpenAI compatible con LiteLLM, como:THUKI_PROVIDER=litellmTHUKI_API_BASE_URL=http://127.0.0.1:4000THUKI_API_KEY=(vacío en el ejemplo)THUKI_SUPPORTED_AI_MODELS=gemma-3-4b-it
- Ejecuta localmente para desarrollo:
npm installnpm run dev(Alternativamente, el repositorio menciona comandos de Bun.)
- Para empaquetado de producción, compila el frontend primero (
npm run build) y luego ejecuta Electron sin el servidor de desarrollo Vite (npm run start). También se proporcionan comandos de distribución para Windows (dist:portable,dist:win).
Casos de uso
- Chat flotante local para prompts rápidos: usa el acceso directo global (Ctrl+Shift+Space) para mostrar la superposición e interactuar mediante los comandos de chat de la app.
- Gestión de sesiones de chat: guarda, lista, carga y elimina historial de conversaciones usando la superficie de comandos de historial integrada en la app.
- Trabajo con flujos relacionados con imágenes: activa comandos que guardan o eliminan imágenes y realizan limpieza de imágenes huérfanas al usar las funciones de imágenes de la interfaz de chat.
- Captura de contenido del escritorio: usa comandos de captura de pantalla para alimentar contexto visual a través de la misma superficie de comandos expuesta a la interfaz.
- Configuración de un proxy de modelo local: configura la app para usar un endpoint OpenAI compatible con LiteLLM en la URL base especificada en
.env, habilitando el comportamiento del proveedor de modelos predeterminado.
Preguntas frecuentes
¿El proyecto soporta macOS?
El repositorio indica que “los comandos de permisos/onboarding solo para macOS devuelven valores predeterminados seguros de Windows”, lo que significa que la compilación actual es priorizada para Windows y que el comportamiento específico de macOS se maneja de forma conservadora para Windows.
¿Cómo se conecta la app a un proveedor de modelos de IA?
Por defecto, el proveedor de modelos está configurado para usar un endpoint OpenAI compatible con LiteLLM. Configuras THUKI_PROVIDER, THUKI_API_BASE_URL, THUKI_API_KEY y los modelos soportados mediante .env.
¿Está implementada la búsqueda?
El repositorio indica que “la búsqueda está simulada como SandboxUnavailable para que la interfaz existente renderice la tarjeta de configuración”, lo que significa que la búsqueda no es completamente funcional en la implementación actual.
¿El arrastre y movimiento de ventana de escritorio son completamente nativos?
No. El arrastre para mover “aún no es completamente nativo” y “el movimiento de ventana es una tarea pendiente”.
¿Cómo se empaquetan las compilaciones de producción para Windows?
El repositorio proporciona comandos de compilación para Windows, incluyendo npm run dist:portable para un EXE portátil y npm run dist:win para un instalador de Windows. También menciona la regeneración del ícono para miaw.ico desde public/miaw-logo.png para mantener la marca sincronizada.
Alternativas
- Clientes de escritorio “chat flotante” que se integran con servidores LLM locales: estos suelen enfocarse en una interfaz siempre disponible similar, pero pueden no reutilizar la superficie de comandos existente de Miaw ni las llamadas de cliente compatibles con Tauri.
- Clientes de chat genéricos para APIs compatibles con OpenAI (locales o remotas): útiles si solo necesitas una interfaz de chat estándar y no requieres el conjunto específico de comandos para conversaciones/historial, comandos de imágenes y capturas de pantalla.
- Construir desde una superposición basada en React con Electron: si quieres control total sobre accesos directos, comportamiento de bandeja y conectividad de modelos, una integración personalizada puede ser más flexible que usar una app precompilada enfocada en Miaw.
- Otros enfoques de wrappers multiplataforma Tauri/Electron: si tu objetivo principal es preservar una superficie de comandos existente y llamadas del frontend, una estrategia de wrapper diferente puede ajustarse mejor a tus plataformas objetivo y necesidades de comportamiento de ventana.
Alternativas
BookAI.chat
BookAI te permite chatear con tus libros usando IA simplemente proporcionando el título y el autor.
Ably Chat
Ably Chat es una API y SDK de chat para crear aplicaciones personalizadas en tiempo real: reacciones, presencia y edición/eliminación de mensajes.
Grok AI Assistant
Grok es un asistente de IA gratuito desarrollado por xAI, diseñado para priorizar la verdad y la objetividad al tiempo que ofrece capacidades avanzadas como acceso a información en tiempo real y generación de imágenes.
AakarDev AI
AakarDev AI es una plataforma poderosa que simplifica el desarrollo de aplicaciones de IA con integración fluida de bases de datos vectoriales, permitiendo un despliegue y escalabilidad rápidos.
skills-janitor
skills-janitor audita y registra el uso de tus habilidades de Claude Code, comparándolas con 9 acciones de slash y sin dependencias.
Talkpal
Talkpal es un profesor de idiomas AI que ayuda a los usuarios a aprender idiomas más rápido a través de conversaciones inmersivas y retroalimentación en tiempo real.