Aller au contenu

turf.bzh dans Codex

Codex lit un fichier AGENTS.md a la racine de votre depot. Posez-y le contexte turf.bzh une fois, il s'en sert a chaque tache.

Pour qui vous developpez avec Codex d'OpenAI, en ligne ou dans votre terminal.

Licence API et abonnement actif requis. La cle reste dans une variable d'environnement : un agent qui travaille tout seul dans un depot ne doit jamais pouvoir la commettre.

Le fichier a donner a votre assistant

Un seul fichier decrit l'API en entier : les adresses, les parametres, les quotas, et surtout les pieges qui font perdre du temps. Votre assistant en a besoin, sinon il invente des adresses qui n'existent pas.

Le fichier n'est pas encore en place sur le serveur.

Pour les detenteurs de la Licence API

Et pour aller beaucoup plus loin : le pack IA

Le fichier ci-dessus apprend a votre assistant ou sont les donnees. Le pack, lui, lui apprend le metier : le vocabulaire du turf, la lecture d'une musique et d'une ferrure, les mathematiques du pari mutuel, la physionomie du Quinte+, les pieges de raisonnement, et la facon de ne jamais conclure plus que ce que les chiffres autorisent.

C'est un dossier a decompresser, pas un fichier a coller. Dix fiches de reference, seize savoir-faire, dix roles specialises, et un guide de parametrage pour que vous regliez tout vous-meme. Surtout, il fait ce que ChatBZH ne peut pas : aller lire la presse, les declarations des entraineurs et la meteo. Et quand vous demandez son avis, il le donne. Deux archives au choix, une pour Claude, une pour Codex.

Decouvrir le pack IA reserve aux comptes ayant la Licence API

Pas a pas

  1. Posez le fichier de reference dans le depot
    docs/turf-bzh-api.md, telecharge ci-dessus.
  2. Creez AGENTS.md a la racine
    C'est le fichier d'instructions que Codex lit pour votre depot, l'equivalent du CLAUDE.md de Claude Code. Le bloc ci-dessous est pret a copier.
  3. Exportez la cle
    export TBZ_KEY=tbz_live_.... Si vous utilisez Codex en ligne, declarez-la dans les variables d'environnement de l'environnement d'execution, pas dans un fichier du depot.
  4. Verifiez avant de lui confier une tache
    Demandez-lui d'appeler /v1/me. S'il n'a pas de reseau sortant vers turf.bzh dans son bac a sable, autant le savoir tout de suite.

AGENTS.md, a la racine du depot

Codex remonte l'arborescence et fusionne les AGENTS.md qu'il trouve : celui de la racine s'applique a tout le depot, un fichier place dans un sous-dossier affine pour ce sous-dossier.

AGENTS.md
# AGENTS.md

## Le projet
Ce depot consomme l'API hippique de turf.bzh (courses PMU francaises).

## Reference de l'API
La description complete est dans `docs/turf-bzh-api.md`.
**Lis ce fichier avant d'ecrire ou de modifier un appel.** N'invente aucune adresse :
celles qui n'y figurent pas n'existent pas, et chaque tentative consomme du quota.
Specification machine : https://www.turf.bzh/api/openapi.json

## Acces
- Base : `https://www.turf.bzh/api`
- En-tete : `Authorization: Bearer $TBZ_KEY`
- La cle vit dans l'environnement. Ne l'ecris jamais dans un fichier, ne la commets
  jamais, ne la reproduis pas dans un message.
- Quotas : 60 requetes/minute, 10 000/jour. Sur 429, respecte l'en-tete `Retry-After`.

## Regles d'appel
- Une course entiere : `/v1/courses/{date}/{rc}/dossier`. Un appel, pas vingt.
  Parametres : `inclure=`, `historique=0`, `format=csv|xlsx`.
- Une journee entiere : `/v1/journees/{date}/partants`.
- Un historique long : `/v1/exports` (CSV mensuels compresses). Jamais une boucle
  d'appels course par course.
- Le jour de la course, la colonne `Cote` de la base est perimee : utilise `/cotes`
  (temps reel) ou le champ `Cote_BZH`.
- Un 404 peut vouloir dire « cette donnee n'existe pas pour cette course », pas
  seulement « mauvaise adresse ». Lis `error.message` et `error.route_proposee`.

## Verifications attendues
- Avant de conclure sur un champ, verifie son taux de remplissage via `/v1/schema` :
  une quinzaine de colonnes sont remplies a moins de 65 %.
- Compare le nombre de lignes produites au `nombre_partants` annonce par l'API.

## Cadre non negociable
Ces donnees decrivent des courses, elles n'en predisent aucune.
- Ne produis jamais de promesse de gain.
- Tout taux, rendement ou avantage doit etre accompagne du nombre d'observations
  sur lequel il est mesure.
- Les contenus editoriaux (Renifleur, EcurieBZH, LigneBZH) portent un champ
  `avertissement` : reprends-le tel quel, ne le resume pas.

Placez ce fichier a la racine. Si vous avez plusieurs projets dans le meme depot, un AGENTS.md par sous-dossier affine sans tout reecrire.

La verification d'installation

Premiere tache a confier a Codex
Lis docs/turf-bzh-api.md, puis ecris un script Python qui :
1. lit la cle dans la variable d'environnement TBZ_KEY ;
2. appelle /v1/me et /v1/statut et affiche le resultat ;
3. appelle le dossier de la R1C4 du jour avec historique=0 ;
4. affiche meta.sections_servies et meta.appels_economises.

Gere le 429 en respectant Retry-After. N'ecris la cle nulle part.

Si ces quatre etapes passent, votre configuration est bonne et Codex a compris la reference.

Deux consignes a donner a votre assistant, et qu'il oubliera sinon

Qu'il accompagne toujours un taux ou un rendement de son nombre d'observations, et qu'il reprenne les champs avertissement que l'API renvoie avec les contenus editoriaux. Le fichier turf-bzh-api.md le dit deja dans sa derniere section : c'est voulu, pour que l'assistant le lise. Le reste, vous le savez : le prelevement PMU s'applique a chaque mise, et un avantage mesure sur le passe n'est pas une garantie sur l'avenir.

Questions frequentes

AGENTS.md, c'est bien la convention de Codex ?
Oui. C'est le fichier d'instructions que Codex lit dans un depot, l'equivalent du CLAUDE.md de Claude Code. Le contenu est le meme, seul le nom du fichier change.
Codex a-t-il acces au reseau ?
Cela depend de votre environnement d'execution. En bac a sable ferme, il ne joindra pas turf.bzh : faites-lui alors ecrire le code, et executez-le vous-meme. C'est pour cela que la premiere tache ci-dessus commence par un appel simple.
Puis-je utiliser le meme fichier pour Claude et pour Codex ?
Le contenu, oui : c'est le meme texte. Les noms different, CLAUDE.md d'un cote, AGENTS.md de l'autre. Rien ne vous empeche d'avoir les deux dans le meme depot.

Documentation complete pour les humains : api-docs.php · Specification machine : openapi.json · Votre cle : api-cle.php