Ir al contenido

Motor de navegador de ChatGPT

repo-harness chatgpt browser-* usa una sesión de ChatGPT Web autenticada localmente para planificar y revisar. No usa la API de OpenAI y no requiere OPENAI_API_KEY. Los prompts se construyen a partir de archivos explícitos del repositorio, y cada ejecución se guarda como un registro de sesión local del repositorio.

El motor de navegador se ejecuta sobre Oracle — repo-harness envuelve oracle --engine browser como el proveedor por defecto y recomendado. El antiguo motor de Chrome propio se mantiene únicamente como un diagnóstico obsoleto.

Qué hace

Construye paquetes de prompt verificados por política a partir de archivos explícitos, impulsa ChatGPT Web a través de Oracle y guarda registros de sesión en .ai/harness/chatgpt/sessions/<sessionId>/.

Qué no hace

Nunca pide nombres de usuario, contraseñas, secretos de SSO, códigos 2FA, cookies ni tokens del navegador. No sube archivos arbitrarios del repositorio, no habilita CDP remoto por defecto, y nunca trata la respuesta del modelo como la fuente de verdad — el almacén de sesiones local del repositorio es el registro de auditoría.

  1. Crea la raíz de sesiones e imprime las reglas de ignorado recomendadas (el estado del navegador permanece local):

    Ventana de terminal
    repo-harness chatgpt browser-setup --repo .
  2. Haz que un binario fijado de Oracle sea resoluble — en tu PATH o en el node_modules/.bin del repositorio. Oracle es una CLI externa opcional con su propio requisito de runtime (Node ≥ 24), mantenida aparte del runtime de Bun de repo-harness.

  3. Verifica que el motor esté listo (esta es la autoridad sobre el límite del runtime de Oracle):

    Ventana de terminal
    repo-harness chatgpt browser-doctor --repo . --provider oracle --json

    Vuelve a ejecutarlo hasta que reporte status: "ready". Si reporta nodeCompatible: false, primero corrige o reinstala el runtime de Node de Oracle.

Valida el prompt, la política de archivos, el tamaño en línea y la ruta de escritura de la sesión sin abrir ChatGPT. Guarda una sesión dry_run.

Ventana de terminal
repo-harness chatgpt browser-consult \
--repo . \
--dry-run \
--prompt "Review this sprint." \
--file plans/sprints/example.sprint.md \
--model "GPT-5 Pro" \
--thinking heavy

Oracle es el proveedor por defecto, así que --provider oracle es opcional pero se muestra aquí por claridad.

Ventana de terminal
repo-harness chatgpt browser-consult \
--repo . \
--provider oracle \
--prompt "Review this PRD and return risks." \
--file plans/prds/example.prd.md \
--follow-up "Challenge your previous recommendation." \
--write-output .ai/harness/handoff/gptpro/chatgpt-review.md
Ventana de terminal
repo-harness chatgpt browser-list --repo .
repo-harness chatgpt browser-session --repo . chgpt_20260617_120530_review-sprint
repo-harness chatgpt browser-session --repo . chgpt_20260617_120530_review-sprint --metadata-only
repo-harness chatgpt browser-open --repo . chgpt_20260617_120530_review-sprint

Cada sesión es un registro autocontenido:

  • Directorio.ai/harness/chatgpt/sessions/
    • Directorio<sessionId>/
      • meta.json metadatos, marcas de tiempo, info del proveedor
      • prompt.md el prompt de entrada
      • transcript.md conversación completa
      • output.md respuesta del asistente capturada
      • events.jsonl flujo de eventos estructurado
      • Directorioartifacts/ artefactos generados opcionales

Enlaza un seguimiento a una sesión guardada — reanuda esa conversación a través de Oracle:

Ventana de terminal
repo-harness chatgpt browser-followup \
--repo . \
--session chgpt_20260617_120530_review-sprint \
--prompt "Turn that review into a Codex-ready goal."

La limpieza usa por defecto la ejecución en seco y solo elimina candidatos cuando se pasa --force:

Ventana de terminal
repo-harness chatgpt browser-cleanup --repo . --status dry_run --limit 20
repo-harness chatgpt browser-cleanup --repo . --status dry_run --limit 20 --force
Ventana de terminal
repo-harness chatgpt browser-doctor --repo . --provider native
repo-harness chatgpt browser-consult --repo . --provider native --prompt "Reply exactly OK"

Las ejecuciones de native usan el modelo/pensamiento ya seleccionado en la interfaz de ChatGPT Web; pasar --model o --thinking falla de forma cerrada. Usa Oracle cuando necesites selección de modelo del lado del proveedor.

Las herramientas de navegador están desactivadas en MCP por defecto. Actívalas explícitamente:

Ventana de terminal
repo-harness mcp serve \
--repo . \
--transport stdio \
--profile planner \
--enable-chatgpt-browser

Esto expone run_chatgpt_browser_consult, read_chatgpt_browser_session, list_chatgpt_browser_sessions, open_chatgpt_browser_session y continue_chatgpt_browser_session. Las consultas por MCP restringen writeOutput a artefactos de flujo de trabajo como .ai/harness/handoff/*.md, tasks/reviews/**, .ai/harness/checks/**, plans/prds/** y plans/sprints/**.

El motor rechaza los archivos denegados antes de cualquier ejecución de navegador o proveedor, y rechaza los enlaces simbólicos de rutas permitidas que se resuelven fuera del repositorio.

  • Permitidos por defecto: AGENTS.md, CLAUDE.md, README.md, docs/**, plans/**, tasks/**, .ai/context/**, .ai/harness/**, package.json
  • Denegados por defecto: .env / .env.*, archivos de clave privada y certificado, .ssh/**, .git/**, node_modules/**, dist/**, build/**, coverage/**, secrets/**, credentials/**, private/**, _ops/**, .repo-harness/**/*.json