opencode-browser-tool-insta.../README.md

119 lines
3.3 KiB
Markdown

# OpenCode Browser Tool
Herramienta browser externa para OpenCode, pensada para navegar e interactuar con aplicaciones web desde un navegador real controlado por `Playwright + Chromium`, con integracion por `MCP`.
## Estado actual
Proyecto en preparacion de la v1.
La prioridad actual es lograr una integracion efectiva entre OpenCode y el browser manteniendo la solucion totalmente desacoplada del core de OpenCode.
## Onboarding recomendado para agentes nuevos
Al iniciar una sesion en un equipo nuevo, pide primero:
- `browser_help` para descubrir capacidades, defaults y ejemplos
- `browser_health` para ver estado operativo, actividad y artifacts recientes
Default relevante en v1:
- `browser_report` usa `saveToFile=true` por defecto (configurable de forma persistente con `browser_config`)
## Objetivo de la v1
- exponer una tool browser externa por `MCP`
- abrir `Chromium` en modo visible por defecto
- permitir navegacion e interaccion base con apps locales
- recoger evidencia minima util para diagnostico
## Stack fijado para la v1
- `Node.js 20+`
- `TypeScript`
- `Playwright`
- `Chromium`
- `MCP` por `stdio`
## Modos de navegador en runtime
- `testing`: navegador gestionado por Playwright (default)
- `system`: navegador del sistema (ej. `/usr/bin/google-chrome`)
Ambos modos pueden abrir con perfil efimero o perfil persistente (`userDataDir`) segun configuracion y parametros de `browser_open`.
Defaults operativos relevantes:
- `recordVideo=false` (grabacion bajo demanda)
- `verbose=true` y `verboseOverlay=true` en modo visible
- delay humano de interaccion `1000-3000ms` para acciones click-like
## Estructura actual
```text
opencode-browser-tool/
artifacts/
config/
docs/
scripts/
src/
browser/
tools/
types/
check.sh
install.sh
opencode.mcp.example.json
package.json
README.md
tsconfig.json
```
## Documentacion principal
- `docs/PLAN_DE_DESARROLLO.md`
- `docs/TODO.md`
- `docs/manual_de_uso_heramienta.md`
- `docs/QUICKSTART.md`
- `docs/VALIDACION_ENTORNO_LIMPIO.md`
- `docs/PLAN_CIERRE_INSTALABLE.md`
- `docs/INSTALACION_WINDOWS.md`
- `docs/INSTALACION_POR_AGENTE.md`
- `docs/REGISTRO_SITUACIONES.md`
- `docs/contexto_workspace/` (snapshot de docs globales clave para continuidad)
## Instalacion prevista
La idea es que este proyecto pueda copiarse o descargarse en un PC con OpenCode y dejarse listo mediante:
- `./install.sh`
- `npm run setup` (alternativa neutral por npm/node)
- una guia de instalacion clara
- o instrucciones que un agente de OpenCode pueda ejecutar
Flujo recomendado para operario (minimo manual):
1. `git clone ...`
2. abrir OpenCode en esa carpeta
3. pedir al agente que siga `docs/INSTALACION_POR_AGENTE.md`
### Que hace el setup
El setup ejecuta, en orden:
- validacion de `Node.js 20+`
- instalacion de dependencias (`npm ci` cuando hay lockfile)
- compilacion (`npm run build`)
- instalacion de `Chromium managed by Playwright`
Al terminar, muestra un snippet MCP con la ruta absoluta local de `dist/server.js`.
### Verificacion
Tras instalar, ejecutar:
- `./check.sh` o `npm run check`
La verificacion recompila y confirma archivos clave para puesta en marcha en otro PC.
## Nota
Este proyecto debe seguir siendo externo a OpenCode para que las actualizaciones del propio OpenCode no afecten a esta herramienta.