En bref : d'après l'annonce officielle de Jules, l'agent de code asynchrone de Google s'arrête le 31 décembre 2026 et passe en lecture seule après le 11 novembre. Votre code, vos branches et vos PR sont déjà sur GitHub et y restent. Ce qu'il faut récupérer, c'est ce qui vit dans Jules : paramètres, variables d'environnement, tâches planifiées, mémoires, scripts de setup et historique des sessions. Google fournit un outil d'export, et l'export peut être confié directement à Claude Code ou Codex.
Avec une seule API Key, nous avons lancé la même tâche dans Claude Code 2.1.310 et Codex 0.164.0 : lire un export Jules, appliquer le patch d'une session, lancer le setup et les tests, puis écrire un AGENTS.md.
- Claude Code (claude-sonnet-5-5) a terminé en environ 15 secondes ; les tests affichent
ok. - Codex (gpt-6.1-sol) a terminé en environ 44 secondes ; les tests affichent
ok. - Les deux AGENTS.md ne listent que les noms des variables d'environnement, jamais leurs valeurs.
Créer une API Key et utiliser une seule clé pour Claude Code et Codex →
Chronologie
| Date | Événement |
|---|---|
| Décembre 2024 | Google lance Jules, un agent qui traite des tâches de code en arrière-plan (d'après The Verge) |
| 29 octobre 2026 | Google annonce l'arrêt et met en ligne l'export des données |
| 11 novembre 2026 | Dernier jour pour faire tourner des sessions ; Jules passe ensuite en lecture seule |
| 31 décembre 2026 | Arrêt de Jules |
D'après l'annonce, les enseignements de Jules sont repris dans Google Antigravity, la plateforme de Google centrée sur les agents. Si vous avez besoin d'un agent en arrière-plan dès maintenant, Claude Code et Codex tournent tous deux sans surveillance dans un terminal ou de façon planifiée.
Étape 1 : exporter vos données Jules (avant le 11 novembre)
La méthode officielle : installer Jules Tools, se connecter, ouvrir un agent de code en ligne de commande comme Claude Code depuis votre dossier personnel, puis coller tout l'« export prompt » de l'annonce :
npm install -g @google/jules
jules login
cd ~
claude # or: codex
L'agent vérifie la CLI et la connexion, lance le script d'export et indique combien de dépôts, de sessions et de patchs il a sauvegardés. Points d'attention (d'après l'annonce) :
jules loginest une connexion interactive dans le navigateur : lancez-la vous-même.- Connectez d'abord votre compte GitHub à Jules, sinon
sources.jsonsera vide. - Le jeton expire au bout d'environ une heure. Si tous les appels renvoient 401, relancez
jules login.
Le dossier exporté ressemble à ceci :
~/jules-export/
├── user-settings.json
├── env-variables.json
├── scheduled-tasks.json
├── sources.json
├── repos/<repo>/setup.sh
├── repos/<repo>/test-command.txt
├── repos/<repo>/memories.md
└── sessions/<id>/summary.md · activities.json · patch-1.diff
env-variables.json contient les valeurs de vos variables d'environnement en clair. Ne le mettez dans aucun dépôt et ne le partagez pas.
Étape 2 : connecter Claude Code et Codex
Claude Code se configure dans le fichier global ~/.claude/settings.json :
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.aicodewith.ai",
"ANTHROPIC_AUTH_TOKEN": "VOTRE_API_KEY",
"APP_MODE": "test"
},
"model": "claude-sonnet-5-5"
}
L'adresse est https://api.aicodewith.ai, sans /v1. Étapes complètes : Connecter Claude Code à une API tierce.
Codex se configure dans le fichier global ~/.codex/config.toml :
model = "gpt-6.1-sol"
model_provider = "aicodewith"
[model_providers.aicodewith]
name = "aicodewith"
base_url = "https://api.aicodewith.ai/chatgpt/v1"
wire_api = "responses"
experimental_bearer_token = "VOTRE_API_KEY"
[shell_environment_policy]
set = { APP_MODE = "test" }
Le détail de chaque champ est dans Configurer l'API Key de Codex et config.toml de Codex expliqué. Si Codex n'est pas encore installé, commencez par Installer Codex.
Étape 3 : où va chaque élément de Jules
| Export Jules | Claude Code | Codex |
|---|---|---|
| env-variables.json | env dans settings.json | set sous [shell_environment_policy] dans config.toml |
| repos/<repo>/setup.sh, test-command.txt | CLAUDE.md (peut importer @AGENTS.md) | AGENTS.md à la racine du dépôt |
| repos/<repo>/memories.md | ajouter à CLAUDE.md | ajouter à AGENTS.md |
| scheduled-tasks.json | cron + claude -p | cron + codex exec |
| sessions/<id>/patch-*.diff | git apply, puis laisser l'agent continuer | idem |
APP_MODE dans les configurations ci-dessus sert d'exemple : recopiez chaque variable Jules sous la forme d'une ligne nom et valeur. Pour une variable utile à un seul dépôt, utilisez le .claude/settings.json de ce dépôt, et ne committez jamais un fichier qui contient des valeurs.
Pour partager un même fichier d'instructions entre les deux clients, voir Partager AGENTS.md entre Claude Code et Codex.
Reprendre les sessions inachevées
Les patchs des sessions Jules inachevées se trouvent dans sessions/<id>/. Appliquez-les dans votre dépôt, puis lancez le setup et les tests :
cd ~/code/demo
git apply ~/jules-export/sessions/<id>/patch-1.diff
bash ~/jules-export/repos/<repo>/setup.sh
$(cat ~/jules-export/repos/<repo>/test-command.txt)
Donnez ensuite à l'agent le Prompt et le Latest plan de summary.md pour qu'il reprenne à partir de là.
Transformer les tâches planifiées en cron
Une tâche planifiée Jules, c'est simplement un prompt exécuté à heure fixe. Utilisez le mode non interactif de Claude Code ou Codex avec cron :
# crontab -e
0 9 * * 1 cd ~/code/demo && claude -p "run tests and fix failures" --permission-mode acceptEdits >> ~/agent-cron.log 2>&1
0 9 * * 1 cd ~/code/demo && codex exec -s workspace-write "run tests and fix failures" >> ~/agent-cron.log 2>&1
--permission-mode acceptEdits autorise Claude Code à modifier des fichiers ; avec -s workspace-write, Codex n'écrit que dans le dépôt courant. Lancez chaque tâche une fois à la main avant de la laisser tourner seule.
Test : le même export dans les deux clients
Nous avons construit un petit export au format officiel : un dépôt Python, une session inachevée (un patch qui corrige la division par zéro), un script de setup, une commande de test, une variable APP_MODE et une tâche planifiée le lundi à 9 h. Les deux clients ont reçu la même consigne : « Applique le patch, lance le setup et les tests, écris un AGENTS.md et ne liste que les noms des variables d'environnement. »
| Claude Code 2.1.310 | Codex 0.164.0 | |
|---|---|---|
| Modèle | claude-sonnet-5-5 | gpt-6.1-sol |
| Mode | claude -p | codex exec -s workspace-write |
| Durée | environ 15 s | environ 44 s |
| Patch | appliqué proprement | appliqué proprement |
| Tests | ok | ok |
| AGENTS.md | seulement APP_MODE | seulement APP_MODE |
Les deux ont remarqué que le Python système refusait le pip install du script de setup (le script se termine par || true, il a donc continué), l'ont signalé et n'ont pas ajouté --break-system-packages de leur propre chef. L'AGENTS.md écrit par Claude Code :
# AGENTS.md
## Setup
pip install -q pytest || true
## Test
python3 test_calc.py
## Environment variables (names only)
- APP_MODE
## Scheduled task
0 9 * * 1 run tests and fix failures
Après le test, nous avons supprimé les dossiers de test et les configurations de clé qu'ils contenaient.
Créer une API Key et déplacer vos tâches Jules vers Claude Code / Codex →
FAQ
Codex renvoie 401 Unauthorized
En général la clé n'est pas lue ou elle est erronée. Vérifiez que experimental_bearer_token est bien sous [model_providers.aicodewith] et que model_provider = "aicodewith" est défini. Procédure complète : Codex 401 Unauthorized. Pour un 401 dans Claude Code, vérifiez ANTHROPIC_AUTH_TOKEN et que l'adresse ne contient pas /v1.
Les tâches planifiées renvoient 429 Too Many Requests
Plusieurs tâches cron lancées à la même minute peuvent atteindre la limite de fréquence. Espacez-les de quelques minutes et consultez Codex 429 Too Many Requests.
Peut-on encore exporter après le 11 novembre ?
D'après l'annonce, Jules est en lecture seule du 11 novembre jusqu'à son arrêt en fin d'année. L'annonce ne précise pas si l'export fonctionne pendant cette période : exportez avant le 11 novembre.
Est-ce que je perds mon code ?
Non. D'après l'annonce, le code, les branches et les PR sont déjà sur GitHub et restent tels quels. L'export ne couvre que la configuration et l'historique stockés dans Jules.



