Retour à l'accueil

PocketCoder-A1 : agent de codage autonome sur Claude

PocketCoder-A1 — agent autonome pour exécuter des tâches de codage via Claude avec vérification à trois niveaux et tableau de bord web. Utilise Python pur, supporte plusieurs fournisseurs, analyse NDJSON en temps réel. Cas réel démontre l'automatisation de l'ajout d'un fournisseur au projet.

Exécutez Claude sur le codage autonome : PocketCoder-A1
Advertisement 728x90

PocketCoder-A1 : Un agent autonome pour le développement nocturne avec Claude

PocketCoder-A1 est un outil CLI avec tableau de bord web qui exécute de manière autonome des tâches de développement. L'agent fonctionne par sessions, sauvegarde l'état, exécute du code via Claude CLI ou API, puis vérifie les résultats : pytest, py_compile, vérifications de fichiers. Prend en charge les fournisseurs Claude Max, Claude API et Ollama. Installation via pip, exécution sur n'importe quel projet avec tableau de bord sur localhost:7331.

Développé en Python pur sans frameworks : 15 modules, 7086 lignes. Serveur HTTP sur http.server, JSON via module standard, fichiers via pathlib. Dépendances externes minimales : playwright pour les tests E2E, anthropic/ollama optionnels.

Architecture et lancement de Claude CLI

L'agent capture une ligne de base de validation avant de démarrer, assemble un prompt, lance Claude CLI en sous-processus avec analyse NDJSON en temps réel. Paramètres de lancement clés :

Google AdInline article slot
import os, subprocess

env = os.environ.copy()
env.pop("CLAUDECODE", None)

proc = subprocess.Popen(
    ["claude", "-p", prompt,
     "--dangerously-skip-permissions",
     "--no-session-persistence",
     "--max-turns", "25",
     "--verbose",
     "--output-format", "stream-json"],
    cwd=str(project_dir),
    env=env,
    stdout=subprocess.PIPE,
    stderr=subprocess.STDOUT,
    text=True,
    bufsize=1,
)

| Paramètre | Objectif |

|-----------|----------|

| -p prompt | Mode non interactif |

Google AdInline article slot

| --dangerously-skip-permissions | Confirmation automatique des tool_use |

| --no-session-persistence | Pas de sauvegarde de session |

| --max-turns 25 | Limite d'itérations |

Google AdInline article slot

| --output-format stream-json | Flux NDJSON |

L'analyseur classe les événements : tool_use (Read — bleu, Bash — violet, thinking — jaune). Les métriques rate_limit_event mettent à jour le tableau de bord via AJAX toutes les 2–3 secondes.

Vérification des résultats à trois niveaux

Après une session, l'agent ne s'arrête pas à "COMPLETED". La vérification s'exécute :

  • Niveau 1 (BLOQUANT) : py_compile sur tous les fichiers .py, pytest, existence des fichiers, success_criteria de la tâche. Échec — nouvelle tentative avec injection d'erreur.
  • Niveau 2 (AVERTISSEMENT) : ruff, build, git diff — enregistrés.
  • Niveau 3 (ANTI-BOUCLE) : Bogues de référence avant démarrage. Maximum 5 tentatives, sinon BLOQUÉ et passage à la tâche suivante.

Les erreurs sont injectées dans le prompt : "ÉCHEC DE VÉRIFICATION, tentative 2/5, BLOQUANT : tests 2 échoués."

Fournisseurs et gestion des tâches

| Fournisseur | Mécanisme | Prérequis |

|-------------|-----------|-----------|

| claude-max | Sous-processus CLI, Stream-JSON, outils natifs | Abonnement Claude Max |

| claude-api | SDK Anthropic, boucle agentique, 6 outils | Clé API |

| ollama | Diffusion de texte, pas d'appel d'outils | Ollama local |

Les tâches sont créées de trois manières :

  • CLI : pca task add.
  • Ajout rapide sur le tableau de bord.
  • Transformation IA : texte brut → tâches structurées avec priorités et critères.

Statuts : EN ATTENTE, EN COURS, TERMINÉ, BLOQUÉ. Glisser-déposer pour les priorités. Cycle de vie : l'agent sélectionne automatiquement la tâche suivante.

Cas concret : Ajout d'un fournisseur à epotos-templates

Projet epotos-templates pour le traitement de documents. Tâche : cloner le dépôt, ajouter la commutation de fournisseur Ollama → DeepSeek.

  • Transformation IA convertit le texte brut en 5 tâches avec critères.
  • Lancement de l'agent : claude-api, journal en direct avec THINK/BASH/READ.
  • Après la session — vérification, coche verte en cas de succès.
  • Transition automatique vers la suivante : analyse de ollama.ts, ai-client.ts, grep des ports.

Progression de 0/5 à 2/5 tâches par session, avec journaux détaillés des appels d'outils.

Points clés :

  • Fonctionnement autonome : définir les tâches — partir, revenir au code vérifié.
  • Vérification à trois niveaux évite les faux positifs.
  • Tableau de bord en temps réel avec analyse NDJSON et métriques de tokens.
  • Prise en charge de multiples fournisseurs via un pipeline unifié.
  • Open source, 7086 lignes de Python pur sans frameworks.

Installation : pip install pocketcoder-a1, pca init /chemin/vers/projet, pca ui. Adapté aux développeurs intermédiaires/seniors souhaitant déléguer un abonnement LLM avec automatisation nocturne.

— Editorial Team

Advertisement 728x90

Lire ensuite