Un dépôt adopté
Exécutez depuis un dépôt qui a déjà exécuté repo-harness adopt. Voir Installation.
repo-harness embarque un serveur MCP qui donne à ChatGPT et à Codex un accès en lecture seule à vos
dépôts enregistrés — les fichiers de workflow PLUS l’arborescence du dépôt, la recherche de texte et le
contenu des fichiers — tandis que les écritures restent limitées aux artefacts de workflow (plans,
sprints, contrats, handoffs). ChatGPT se connecte en HTTP avec OAuth via un point de terminaison public
/mcp ; Codex se connecte localement en stdio sans tunnel. Le sidecar n’est pas un agent de codage
distant — il prépare les artefacts de workflow pour l’hôte d’agent local.
Un dépôt adopté
Exécutez depuis un dépôt qui a déjà exécuté repo-harness adopt. Voir Installation.
repo-harness sur le PATH
La CLI repo-harness doit être installée et résolvable sur le PATH de votre shell.
Mode Développeur ChatGPT
Un espace de travail ChatGPT avec accès au Mode Développeur et aux Connecteurs MCP personnalisés.
Un point de terminaison /mcp public
Une URL HTTPS publique stable /mcp pour un usage récurrent de ChatGPT. Codex local utilise stdio sans tunnel.
Lancez le serveur en profil planificateur en HTTP sur localhost :
repo-harness mcp serve --repo . --transport http --host 127.0.0.1 --port 8765 --profile plannerConfirmez qu’il est sain :
curl http://127.0.0.1:8765/healthLisez la phrase secrète OAuth locale — ChatGPT la demandera pendant l’autorisation :
jq -r .passphrase .repo-harness/mcp.oauth.jsonTestez à blanc la découverte OAuth :
curl http://127.0.0.1:8765/.well-known/oauth-protected-resource/mcpChatGPT a besoin d’une URL HTTPS publique se terminant par /mcp. Préférez un nom d’hôte stable pour un usage
récurrent — l’URL d’un tunnel rapide change, et ChatGPT traite chaque nouvelle URL comme une application
Connecteur différente.
cloudflared tunnel logincloudflared tunnel create repo-harness-mcpcloudflared tunnel route dns repo-harness-mcp repo-harness-mcp.example.comcloudflared tunnel run --url http://127.0.0.1:8765 repo-harness-mcpPuis enregistrez le point de terminaison stable dans la config locale ignorée :
repo-harness mcp setup chatgpt --repo . --endpoint <https-url>/mcpcloudflared tunnel --url http://127.0.0.1:8765Utilisez l’URL HTTPS affichée avec /mcp ajouté comme URL de votre Connecteur :
<https-tunnel-url>/mcprepo-harness./mcp..repo-harness/mcp.oauth.json.Codex s’exécute localement et n’a besoin d’aucun tunnel — il parle stdio directement. Générez automatiquement la config :
repo-harness mcp setup codex --repo . --scope projectCela écrit .codex/config.toml avec une entrée de serveur stdio repo_harness et la liste des outils
autorisés.
repo-harness mcp serve --repo . --transport http --host 127.0.0.1 --port 8765 \ --profile orchestrator --enable-dev-runner --dev-runner-agents codexOu via une surcharge d’environnement :
REPO_HARNESS_MCP_DEV_RUNNER=1 REPO_HARNESS_MCP_DEV_RUNNER_AGENTS=codex,claude \ repo-harness mcp serve --repo . --transport http --profile orchestratorQuand il est activé, le serveur expose run_agent_goal. Il lit uniquement
.ai/harness/handoff/codex-goal.md et exécute ce handoff fixe via la CLI locale
autorisée. Ce n’est pas un shell arbitraire.
Le profil planner est principalement en lecture : il peut lire vos dépôts enregistrés et écrire
uniquement des artefacts de planification — jamais le code source d’application, les manifestes, les fichiers
de verrouillage, la config CI, les secrets, ni les fichiers hors d’une racine de dépôt autorisée.
harness_status, harness_doctor, read_workflow_file,
list_workflow_files, latest_handoff, latest_checksreader_status, list_allowed_roots, open_workspace,
tree, search_text, read_text — parcourez et recherchez dans le dépôt, pas seulement les fichiers de workflowwrite_prd_from_idea, write_checklist_sprint,
prepare_codex_goal_from_sprintLes globs de refus restent actifs même lorsque les lectures de dépôt sont activées : .env, les clés
privées, les clés SSH, les identifiants, les secrets, .git, et la sortie de dépendances/build ne sont
jamais retournés.
Un seul Connecteur peut servir tous les dépôts que vous avez adoptés. repo-harness adopt et
repo-harness init enregistrent un dépôt dans ~/.repo-harness/registered-repos.json ;
discover_harness_repos les liste, et les outils de lecture acceptent un repo_path pour cibler un
dépôt spécifique. La lecture intégrale du disque est dépréciée — l’ancien fullDiskRead: true
échoue désormais de façon fermée ; ajoutez explicitement des racines supplémentaires hors dépôt avec
--allow-root.
La configuration au niveau utilisateur (repo-harness mcp setup chatgpt sans --repo, stockant la
config et l’auth sous ~/.repo-harness/) fonctionne pour les déploiements en Mode Développeur. L’auth
HTTP prend en charge OAuth — avec rotation de jeton de rafraîchissement offline_access — et un mode de
compatibilité url-token.
La chaîne de planification attendue : idée → write_prd_from_idea → write_checklist_sprint →
prepare_codex_goal_from_sprint → exécution locale Codex /goal.
/mcp.repo-harness mcp serve et rescannez les outils.write_checklist_sprint.repo-harness mcp setup codex --repo . --scope project.