Skip to main content
Glama

Clique Já


Por qué existe

Playwright y puppeteer son geniales — y pesados para "solo hacer clic en ese botón ahora".
Clique Já engancha una pestaña de Chrome que ya usas, inyecta un micro-runtime rojo (__cliqueja) y responde comandos vía WebSocket en milisegundos.

Clique Já

Automatización clásica

Browser

Chrome real (tu sesión)

Chromium aislado

Sesión / login

ya iniciado

re-auth / storage state

Latencia por clic

1 evaluate

stack completa

Agente IA

tools MCP

scripts / custom


Related MCP server: monkeysee

Diagrama de flujo

flowchart LR
  subgraph Agent["Agente / CLI"]
    MCP["mcp.mjs<br/>tools MCP"]
    HTTP["POST /cmd"]
  end

  subgraph Hub["Hub local :17321"]
    H["hub.mjs<br/>WebSocket + HTTP"]
  end

  subgraph Chrome["Chrome"]
    EXT["Extensão Clique Já<br/>service worker"]
    TAB["Aba http(s)"]
    INJ["inject.js<br/>window.__cliqueja"]
  end

  MCP -->|WS| H
  HTTP -->|HTTP| H
  H <-->|WS| EXT
  EXT -->|scripting MAIN world| INJ
  INJ --> TAB

Flujo de un clic

sequenceDiagram
  participant A as Agente
  participant H as Hub :17321
  participant E as Extensão
  participant P as Página

  A->>H: { method: "click", sel: "button" }
  H->>E: mesmo envelope (WS)
  E->>P: inject + __cliqueja.click
  P-->>E: ok (+ flash vermelho)
  E-->>H: { ok: true }
  H-->>A: result

Arquitectura detallada: docs/ARCHITECTURE.md


Inicio rápido

1. Hub

git clone https://github.com/paivaxqz/cliqueja.git
cd cliqueja
npm install
npm run hub
# ou: start-hub.bat  (Windows)

Hub escucha solo 127.0.0.1:17321.

2. Extensión

  1. Chrome → chrome://extensions → Developer mode

  2. Load unpacked → carpeta ext/

  3. Abre un sitio http(s) (no chrome://)

  4. Haz clic en el ícono → usar esta pestaña (badge ON rojo)

3. Smoke HTTP

curl http://127.0.0.1:17321/status
curl -X POST http://127.0.0.1:17321/cmd -H "content-type: application/json" -d "{\"method\":\"ping\"}"

4. MCP en la IA (PC del usuario)

Hub + extensión corren en la máquina de quien usa — no en la nube.

Guía completa (3 pasos + Cursor/Claude): docs/MCP.md

Config Cursor — path del clon del usuario:

{
  "mcpServers": {
    "cliqueja": {
      "command": "node",
      "args": ["${workspaceFolder}/mcp.mjs"]
    }
  }
}

Si la carpeta abierta en Cursor no es el clon, usa path absoluto (C:\\Users\\...\\cliqueja\\mcp.mjs o /Users/.../cliqueja/mcp.mjs).

Tools: cliqueja_status · abas · usar_aba · ir · click · fill · texto · snapshot · links · upload

¿Por qué no Vercel?

Vercel no abre el Chrome del usuario ni recibe el WebSocket de la extensión (127.0.0.1).
Landing/docs en Vercel ok. Hub + MCP + extensión = siempre local. → docs/MCP.md

5. Modo lib (Playwright fino)

npm run exemplo

index.js + inject.js: Chrome vía playwright-core, 1 evaluate por acción, marca roja en la esquina.


Selectores

  • CSS: button.buy, #email

  • Texto: text=Entrar

  • XPath: xpath=//button[@type='submit']

Timeout predeterminado de la extensión: 4s (inject espera con requestAnimationFrame).


Estructura

cliqueja/
├── ext/                 # Chrome MV3 (load unpacked)
│   ├── manifest.json
│   ├── background.js    # WS client + comandos
│   ├── inject.js        # runtime na página
│   ├── popup.*          # UI vermelha
│   └── icon-128.png
├── hub.mjs              # bridge WS/HTTP
├── mcp.mjs              # MCP stdio → hub
├── index.js             # lib Playwright rápida
├── inject.js            # mesmo runtime (lib)
├── exemplo.js
├── start-hub.bat
└── docs/
    └── ARCHITECTURE.md

Seguridad

  • Hub localhost only — no expongas el puerto

  • La extensión pide debugger solo para subida de archivo (CDP DOM.setFileInputFiles)

  • No corras en máquinas compartidas sin entender lo que el agente puede hacer clic

  • Úsalo bajo tu propio riesgo; respeta los ToS de los sitios que automatices


Licencia

MIT · Clique Já · paivaxqz

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables MCP clients to drive a real, logged-in Chrome browser for web automation tasks like navigation, clicking, typing, and screenshotting.
    0
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables browser automation over MCP using a real Chrome browser with existing profile, supporting real tabs, downloads, cookies, and RPA workflows.
    354 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Drive your real, signed-in Chrome browser from any MCP client, enabling browser automation such as navigation, clicking, typing, and screenshots through standard MCP tools.
    1
    -