Skip to content

Latest commit

 

History

History
226 lines (154 loc) · 11.4 KB

File metadata and controls

226 lines (154 loc) · 11.4 KB

📱 OmniAntigravity Remote Chat

Tu sesión de IA no tiene que acabar cuando te levantas del escritorio.


Controla tu IA desde el sofá

Version Node CI License

npm npm downloads Docker

Refleja el chat de IA de Antigravity en tu teléfono en tiempo real.
Envía mensajes. Cambia modelos. Gestiona ventanas. Todo desde tu navegador móvil.

Empezar · Capturas · Cómo Funciona · Docker · npm

🌐 Disponible en: 🇺🇸 English | 🇧🇷 Português (Brasil) | 🇪🇸 Español | 🇫🇷 Français | 🇮🇹 Italiano | 🇷🇺 Русский | 🇨🇳 中文 (简体) | 🇩🇪 Deutsch | 🇮🇳 हिन्दी | 🇹🇭 ไทย | 🇺🇦 Українська | 🇸🇦 العربية | 🇯🇵 日本語 | 🇻🇳 Tiếng Việt | 🇧🇬 Български | 🇩🇰 Dansk | 🇫🇮 Suomi | 🇮🇱 עברית | 🇭🇺 Magyar | 🇮🇩 Bahasa Indonesia | 🇰🇷 한국어 | 🇲🇾 Bahasa Melayu | 🇳🇱 Nederlands | 🇳🇴 Norsk | 🇵🇹 Português (Portugal) | 🇷🇴 Română | 🇵🇱 Polski | 🇸🇰 Slovenčina | 🇸🇪 Svenska | 🇵🇭 Filipino


😤 El Problema

Estás en medio de una sesión de codificación asistida por IA. Claude está generando código, Gemini está revisando tu arquitectura. Entonces suena tu teléfono, alguien te necesita en la cocina, o simplemente quieres moverte al sofá.

Tus opciones hoy:

  • ❌ Volver al escritorio cada vez que la IA responde
  • ❌ Intentar leer el monitor desde el otro lado de la habitación
  • ❌ Copiar y pegar en otra app móvil (perdiendo contexto)
  • ❌ Simplemente... dejar de programar

Tiene que haber una forma mejor.

✅ La Solución

OmniAntigravity refleja todo el chat de IA de Antigravity en tu teléfono — en tiempo real, con interacción completa. Lee respuestas, envía mensajes de seguimiento, cambia modelos de IA, gestiona múltiples ventanas del editor. Todo desde tu navegador móvil.

npx omni-antigravity-remote-chat

Eso es todo. Abre la URL en tu teléfono. Ya estás dentro. 🚀


📸 Véalo en Acción

Interfaz Principal Selección de Modelo Listo para Chat
UI dark premium con sync en tiempo real Alterna entre Gemini, Claude, GPT Envía mensajes desde tu teléfono

⚡ Empezar

Un comando — cero configuración:

npx omni-antigravity-remote-chat

O instala globalmente:

npm install -g omni-antigravity-remote-chat
omni-chat

O ejecuta con Docker:

docker run -d --name omni-chat \
  --network host \
  -e APP_PASSWORD=tu_contraseña \
  diegosouzapw/omni-antigravity-remote-chat:latest

Prerequisito

Inicia Antigravity en modo debug (configuración única):

antigravity . --remote-debugging-port=7800

💡 Consejo: Añade alias agd='antigravity . --remote-debugging-port=7800' a tu ~/.bashrc


🏆 Por Qué los Desarrolladores lo Eligen

Característica Detalles
🛋️ Programa desde cualquier lugar Lee y responde chats de IA desde el sofá, la cama o la cocina
🪟 Multi-ventana Alterna entre múltiples instancias de Antigravity desde un teléfono
🔄 Sync en tiempo real < 100ms de latencia vía WebSocket — las actualizaciones aparecen al instante
🤖 Cambio de modelo Alterna entre Gemini, Claude, GPT desde un dropdown móvil
🤖 Remote Autonomy Auto-detect and 1-tap accept/reject CLI instructions remotely
📱 Telegram Alerts Get push notifications for Blocks, Task completion and Pending actions
📋 Historial de chat Navega y retoma conversaciones anteriores en el móvil
🔒 Seguro por defecto HTTPS, autenticación por contraseña, sesiones por cookie, auto-auth LAN
🌐 Acceso remoto Soporte ngrok con código QR — accede desde cualquier lugar
🐳 Docker listo Despliegue con un solo comando
♻️ Código modular Arquitectura limpia con tipado JSDoc (config, state, utils, cdp)

📱 Cómo Funciona

┌─────────────┐    CDP (7800)    ┌──────────────┐    HTTPS/WS (4747)    ┌─────────────┐
│ Antigravity  │ ◄──────────────► │  Node Server  │ ◄──────────────────► │   Teléfono   │
│  (Desktop)   │    DOM snapshot   │  (server.js)  │    espejo + control  │  (Browser)   │
└─────────────┘                  └──────────────┘                      └─────────────┘

El servidor se conecta a Antigravity a través del Chrome DevTools Protocol (CDP), captura el DOM del chat en tiempo real y lo transmite a tu teléfono vía WebSocket. Las acciones en tu teléfono (enviar mensajes, cambiar modelos) se ejecutan de vuelta en el escritorio vía CDP.

Zero impacto en tu escritorio — el espejo es de solo lectura hasta que interactúes. Sin plugins, sin extensiones, sin modificaciones a Antigravity.


🪟 Gestión Multi-Ventana

Gestiona múltiples instancias de Antigravity desde un solo teléfono:

  • Selector de Ventana — Toca 🖥️ para ver todas las ventanas abiertas de Antigravity
  • Cambio Instantáneo — Selecciona cualquier ventana, se refleja en 2 segundos
  • Filtro Inteligente — Solo muestra ventanas reales del editor (oculta Configuración, Launchpad)
  • Abrir Ventanas — Crea nuevas instancias de Antigravity directamente desde tu teléfono

🔑 Configuración

cp .env.example .env
Variable Por defecto Descripción
APP_PASSWORD antigravity Contraseña de autenticación
PORT 4747 Puerto del servidor
COOKIE_SECRET (auto-generado) Secreto para firma de cookies
AUTH_SALT (auto-generado) Salt adicional para tokens de auth
NGROK_AUTHTOKEN (opcional) Para acceso remoto vía ngrok

🛠️ Solución de Problemas

Problema Solución
"CDP not found" Inicia Antigravity con --remote-debugging-port=7800
"EADDRINUSE" Cambia PORT en .env, o detén el proceso en ese puerto
El teléfono no conecta Verifica que estén en la misma red Wi-Fi y revisa el firewall
"Syncing..." atascado Espera 2-3s para que los contextos CDP se carguen tras cambiar ventana

📁 Estructura del Proyecto

├── src/
│   ├── server.js              # Servidor principal (Express + WS + acciones CDP)
│   ├── config.js              # Constantes, variables de entorno, IDs de contenedores
│   ├── state.js               # Estado compartido + definiciones de tipos JSDoc
│   ├── cdp/
│   │   └── connection.js      # Descubrimiento y conexión CDP
│   └── utils/
│       ├── network.js         # getLocalIP, isLocalRequest, getJson
│       ├── process.js         # killPortProcess, launchAntigravity
│       └── hash.js            # Utilidad de hash
├── public/                    # Interfaz móvil del chat
├── launcher.js                # Launcher con QR code + ngrok
├── scripts/                   # SSL, instaladores de menú contextual
├── test/                      # Suite de pruebas de validación
├── Dockerfile                 # Soporte Docker
└── .github/workflows/         # CI + auto-release + Docker Hub

🤝 Contribuir

  1. Haz un fork del repositorio
  2. Crea tu rama de feature (git checkout -b feature/caracteristica-increible)
  3. Haz commit de tus cambios (git commit -m 'Añade característica increíble')
  4. Haz push a la rama (git push origin feature/caracteristica-increible)
  5. Abre un Pull Request

Consulta CONTRIBUTING.md para directrices detalladas.


🙏 Agradecimientos

Agradecimiento especial a Krishna Kanth B — el creador original del concepto de chat móvil para Windsurf que inspiró este proyecto. OmniAntigravity amplía esa base con gestión multi-ventana, manejo robusto de CDP, empaquetado NPM/Docker y una UI mobile-first premium.


📄 Licencia

GPL-3.0 — consulta LICENSE para detalles.


Hecho con ❤️ para desarrolladores que programan desde cualquier lugar
github.com/diegosouzapw/OmniAntigravityRemoteChat