Automa es un panel local con cards. Cada card hace algo real en tu Windows: abre Notepad, bloquea la pantalla, captura el escritorio, lee el portapapeles, corre PowerShell con allowlist. Todo declarativo en JSON, todo en tu máquina, todo Python puro.
Un panel que se ve como una app de Windows. Cada botón ejecuta una acción real, no un mock. Si necesitás un caso nuevo, escribís un JSON (a veces ~15 líneas de Python para una acción nueva) y aparece como botón. Sin IA, sin servidores, sin telemetría.
Ventana real con pywebview empaquetada con PyInstaller. Instalador .exe que registra la app en Inicio. Sin terminal, sin browser.
Cada caso es un JSON con steps, allowlist de acciones, allowlist de paths, timeout y políticas. Validado por JSON Schema antes de correr.
Cada flow declara su sandbox. El motor rechaza acciones fuera del allowlist, valida prefijos de paths y exige los secrets antes de iniciar.
Cualquier flow puede programarse con intervalo o cron de 5 campos. Lock SQLite contra ejecuciones paralelas. Webhooks IN opt-in con token.
Todas las corridas en SQLite con filtro, badge de estado, duración y detalle. Endpoint Prometheus + dashboard de métricas.
Sin APIs de IA, sin servicios cloud, sin telemetría. La data nunca sale de tu equipo. Funciona offline.
Tres opciones según para qué lo quieras usar.
Doble-click al .exe, wizard de instalación, listo. No requiere admin.
git clone https://github.com/vladimiracunadev-create/automa-pc
cd automa-pc
uv sync --extra dev --extra schema
uv run automa-desktop
Cross-platform (Win / Linux / macOS).
Cada flow es una carpeta en flows/NN_slug/ con manifest JSON, contexto de ejemplo y README detallado.
| # | Caso | Familia | Qué hace de un click |
|---|---|---|---|
| 01 | 📷 screen_capture_analyze | pantalla | Captura el escritorio (PNG 1920×1080) y analiza brillo/RGB. |
| 02 | 🌐 screen_capture_browser | navegador | Lanza Chromium headless y captura el DOM de una URL. |
| 03 | 📁 folder_inventory | filesystem | Lista archivos de una carpeta a JSON. |
| 04 | 📄 document_drop_pipeline | documentos | Resume archivos .txt/.md/.log/.csv/.json. |
| 05 | 🖥️ system_healthcheck | sistema | Snapshot CPU/RAM/disco + reglas de alerta. |
| 06 | ⚙️ process_watchdog | sistema | Top 10 procesos con alertas por umbral RAM/CPU. |
| 07 | 📋 browser_form_filler | navegador | Chromium visible llena form de 10 campos con seeds. |
| 08 | 🔒 windows_lock_workstation | sistema | Bloquea el equipo (Win+L). |
| 09 | 🖥️ show_desktop_capture | pantalla | Win+D + captura del escritorio limpio. |
| 10 | 📁 explorer_open_path | sistema | Abre explorer.exe en una ruta configurable. |
| 11 | ⚙️ settings_open_section | sistema | Abre Configuración en sección vía URI ms-settings: |
| 12 | 👁️ desktop_ocr_inventory | pantalla | OCR de toda la pantalla → JSON con bboxes. |
| 13 | 📝 notepad_quick_note | sistema | Abre Notepad y tipea una nota configurable. |
| 14 | ⌨️ run_dialog_command | sistema | Win+R + tipea comando + Enter. |
| 15 | 📋 clipboard_capture | sistema | Lee portapapeles y persiste a JSON. |
| 16 | 🖼️ active_window_screenshot | pantalla | PNG solo de la ventana en foco. |
| 17 | 📊 taskmgr_snapshot | pantalla | Task Manager + captura + OCR. |
| 18 | 🛡️ powershell_audit | sistema | PowerShell con allowlist read-only. |
| 19 | 🪟 taskbar_capture | pantalla | PNG solo de la barra de tareas. |
| 20 | 🔇 volume_mute_toggle | sistema | Togglea el mute (tecla multimedia). |
Decir qué no hace ayuda tanto como decir qué hace.
El "razonamiento" lo da el manifest declarativo + condiciones del engine. Sin LLM, sin APIs de OpenAI/Anthropic, sin nube.
Es para un operador en su equipo. Sin RBAC, sin login.
Webhooks IN/OUT existen pero son opt-in y locales.
Cada caso es un JSON versionado en git. Reproducible, auditable, diff-able.
Abre ventanas, tipea, bloquea, captura, mutea. No es un mock.
El sustrato es estable. La inversión va a más flows, no a refactor.