Aller au contenu

Moteur navigateur ChatGPT

repo-harness chatgpt browser-* pilote une session ChatGPT Web authentifiée localement pour la planification et la revue. Il n’utilise pas l’API OpenAI et ne requiert pas OPENAI_API_KEY. Les prompts sont construits à partir de fichiers de dépôt explicites, et chaque exécution est enregistrée comme un enregistrement de session repo-local.

Le moteur navigateur s’appuie sur Oracle — repo-harness encapsule oracle --engine browser comme provider par défaut et recommandé. L’ancien moteur Chrome maison n’est conservé que comme diagnostic déprécié.

Ce qu'il fait

Construit des lots de prompts vérifiés par politique à partir de fichiers explicites, pilote ChatGPT Web via Oracle, et enregistre les enregistrements de session sous .ai/harness/chatgpt/sessions/<sessionId>/.

Ce qu'il ne fait pas

Ne demande jamais de noms d’utilisateur, mots de passe, secrets SSO, codes 2FA, cookies ni jetons de navigateur. Ne téléverse pas de fichiers de dépôt arbitraires, n’active pas le CDP distant par défaut, et ne traite jamais la réponse du modèle comme la source de vérité — le magasin de sessions repo-local est l’enregistrement d’audit.

  1. Créez la racine de session et affichez les règles d’ignorance recommandées (l’état du navigateur reste local) :

    Fenêtre de terminal
    repo-harness chatgpt browser-setup --repo .
  2. Rendez résoluble un binaire Oracle épinglé — sur votre PATH ou dans le node_modules/.bin du dépôt. Oracle est un CLI externe optionnel avec sa propre exigence d’exécution (Node ≥ 24), maintenu séparé du runtime Bun de repo-harness.

  3. Vérifiez que le moteur est prêt (c’est l’autorité pour la frontière d’exécution d’Oracle) :

    Fenêtre de terminal
    repo-harness chatgpt browser-doctor --repo . --provider oracle --json

    Relancez jusqu’à ce qu’il rapporte status: "ready". S’il rapporte nodeCompatible: false, corrigez ou réinstallez d’abord le runtime Node d’Oracle.

Validez le prompt, la politique de fichiers, la taille en ligne et le chemin d’écriture de session sans ouvrir ChatGPT. Cela enregistre une session dry_run.

Fenêtre 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 est le provider par défaut, donc --provider oracle est optionnel mais montré ici pour plus de clarté.

Fenêtre 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
Fenêtre 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

Chaque session est un enregistrement autonome :

  • Répertoire.ai/harness/chatgpt/sessions/
    • Répertoire<sessionId>/
      • meta.json métadonnées, horodatages, infos du provider
      • prompt.md le prompt d’entrée
      • transcript.md conversation complète
      • output.md réponse de l’assistant capturée
      • events.jsonl flux d’événements structuré
      • Répertoireartifacts/ artefacts générés optionnels

Liez un suivi à une session enregistrée — il reprend cette conversation via Oracle :

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

Le nettoyage est par défaut en exécution à blanc et ne supprime les candidats que lorsque --force est passé :

Fenêtre 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
Fenêtre de terminal
repo-harness chatgpt browser-doctor --repo . --provider native
repo-harness chatgpt browser-consult --repo . --provider native --prompt "Reply exactly OK"

Les exécutions natives utilisent le modèle/mode de réflexion déjà sélectionné dans l’interface ChatGPT Web ; passer --model ou --thinking échoue de façon fermée. Utilisez Oracle quand vous avez besoin d’une sélection de modèle côté provider.

Les outils navigateur sont désactivés dans MCP par défaut. Activez-les explicitement :

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

Cela expose run_chatgpt_browser_consult, read_chatgpt_browser_session, list_chatgpt_browser_sessions, open_chatgpt_browser_session et continue_chatgpt_browser_session. Les consultations MCP restreignent writeOutput aux artefacts de workflow tels que .ai/harness/handoff/*.md, tasks/reviews/**, .ai/harness/checks/**, plans/prds/** et plans/sprints/**.

Le moteur rejette les fichiers refusés avant toute exécution navigateur ou provider, et rejette les liens symboliques de chemin autorisé qui se résolvent en dehors du dépôt.

  • Autorisé par défaut : AGENTS.md, CLAUDE.md, README.md, docs/**, plans/**, tasks/**, .ai/context/**, .ai/harness/**, package.json
  • Refusé par défaut : .env / .env.*, fichiers de clé privée et de certificat, .ssh/**, .git/**, node_modules/**, dist/**, build/**, coverage/**, secrets/**, credentials/**, private/**, _ops/**, .repo-harness/**/*.json