Zurück zur Startseite

PocketCoder-A1: autonomer Coding-Agent auf Claude

PocketCoder-A1 — autonomer Agent für die Ausführung von Codierungsaufgaben über Claude mit dreistufiger Überprüfung und Web-Dashboard. Verwendet reines Python, unterstützt mehrere Provider, parst NDJSON in Echtzeit. Echter Fall demonstriert Automatisierung des Hinzufügens eines Providers zum Projekt.

Claude für autonome Codierung starten: PocketCoder-A1
Advertisement 728x90

PocketCoder-A1: Ein autonomer Agent für nächtliche Entwicklung mit Claude

PocketCoder-A1 ist ein CLI-Tool mit einem Web-Dashboard, das Entwicklungsaufgaben autonom ausführt. Der Agent arbeitet in Sitzungen, speichert den Zustand, führt Code über die Claude CLI oder API aus und überprüft dann die Ergebnisse: pytest, py_compile, Dateiprüfungen. Unterstützt Claude Max, Claude API und Ollama-Provider. Installation über pip, läuft auf jedem Projekt mit einem Dashboard unter localhost:7331.

In reinem Python ohne Frameworks entwickelt: 15 Module, 7086 Zeilen. HTTP-Server auf http.server, JSON über Standardmodul, Dateien über pathlib. Externe Abhängigkeiten minimal: playwright für E2E-Tests, anthropic/ollama optional.

Architektur und Starten der Claude CLI

Der Agent erfasst eine Validierungsbasislinie vor dem Start, erstellt einen Prompt, startet die Claude CLI als Subprozess mit Echtzeit-NDJSON-Parsing. Wichtige Start-Flags:

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,
)

| Flag | Zweck |

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

| -p prompt | Nicht-interaktiver Modus |

Google AdInline article slot

| --dangerously-skip-permissions | Tool_use automatisch bestätigen |

| --no-session-persistence | Keine Sitzungsspeicherung |

| --max-turns 25 | Iterationslimit |

Google AdInline article slot

| --output-format stream-json | NDJSON-Stream |

Der Parser klassifiziert Ereignisse: tool_use (Read — blau, Bash — lila, thinking — gelb). Rate_limit_event-Metriken aktualisieren das Dashboard via AJAX alle 2–3 Sekunden.

Drei-Stufen-Ergebnisüberprüfung

Nach einer Sitzung stoppt der Agent nicht bei "COMPLETED". Die Überprüfung läuft:

  • Stufe 1 (BLOCKIEREND): py_compile aller .py-Dateien, pytest, Dateiexistenz, success_criteria aus der Aufgabe. Fehlgeschlagen — Wiederholung mit Fehlerinjektion.
  • Stufe 2 (WARNUNG): ruff, build, git diff — protokolliert.
  • Stufe 3 (ANTI-LOOP): Basislinienfehler vor dem Start. Maximal 5 Versuche, sonst BLOCKED und zur nächsten Aufgabe wechseln.

Fehler werden in den Prompt injiziert: "VERIFICATION FAILED, attempt 2/5, BLOCKING: tests 2 failed."

Provider und Aufgabenverwaltung

| Provider | Mechanismus | Anforderungen |

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

| claude-max | CLI-Subprozess, Stream-JSON, native Tools | Claude Max-Abonnement |

| claude-api | Anthropic SDK, agentischer Loop, 6 Tools | API-Schlüssel |

| ollama | Text-Streaming, kein Tool Calling | Lokales Ollama |

Aufgaben werden auf drei Arten erstellt:

  • CLI: pca task add.
  • Quick Add im Dashboard.
  • AI Transform: Rohtext → strukturierte Aufgaben mit Prioritäten und Kriterien.

Status: PENDING, IN PROGRESS, DONE, BLOCKED. Drag-and-Drop für Prioritäten. Lebenszyklus: Agent wählt automatisch die nächste Aufgabe.

Praxisbeispiel: Hinzufügen eines Providers zu epotos-templates

Projekt epotos-templates für Dokumentenverarbeitung. Aufgabe: Repository klonen, Provider-Umschaltung Ollama → DeepSeek hinzufügen.

  • AI Transform wandelt Rohtext in 5 Aufgaben mit Kriterien um.
  • Agent-Start: claude-api, Live-Log mit THINK/BASH/READ.
  • Nach der Sitzung — Überprüfung, grünes Häkchen bei Erfolg.
  • Automatischer Übergang zur nächsten: ollama.ts, ai-client.ts analysieren, Ports grep.

Fortschritt von 0/5 zu 2/5 Aufgaben pro Sitzung, mit detaillierten Tool-Call-Logs.

Wichtige Punkte:

  • Autonomer Betrieb: Aufgaben setzen — gehen, zurückkehren zu verifiziertem Code.
  • Drei-Stufen-Überprüfung verhindert falsch-positive Ergebnisse.
  • Echtzeit-Dashboard mit NDJSON-Parsing und Token-Metriken.
  • Unterstützung mehrerer Provider über eine einheitliche Pipeline.
  • Open Source, 7086 Zeilen reines Python ohne Frameworks.

Installation: pip install pocketcoder-a1, pca init /pfad/zum/projekt, pca ui. Geeignet für mittlere/senior Entwickler, die LLM-Abonnements mit nächtlicher Automatisierung entlasten möchten.

— Editorial Team

Advertisement 728x90

Weiterlesen