From 178883cd2ebadac3cc7d07b383990e10db47511b Mon Sep 17 00:00:00 2001 From: chahinebrini Date: Wed, 29 Jul 2026 21:26:05 +0200 Subject: [PATCH] =?UTF-8?q?fix(briefing):=20Work-Loop=20als=20Hintergrundp?= =?UTF-8?q?rozess=20=E2=80=94=20und=20kein=20hartkodiertes=20timeoutSec=20?= =?UTF-8?q?mehr?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Zwei selbstverschuldete Fehler, vom CEO an den echten Agenten-Logs entdeckt: 1) Das Briefing schrieb `timeoutSec=50` vor. codex uebergab den Wert brav — und ein explizites Argument sticht die Roster-Einstellung. Der gerade gebaute per-Agent-Timeout (codex 240s) war damit wirkungslos. Jetzt steht dort ausdruecklich: OHNE timeoutSec aufrufen, der Roster entscheidet. 2) Der eigentliche Unterschied zwischen den Agenten stand die ganze Zeit im kimi-Log: kimi startet den Loop als HINTERGRUNDPROZESS ("bash task started in background"), codex als Tool-Call mitten im Turn. Ein Hintergrundprozess ueberlebt das Turn-Ende, ein Tool-Call nicht — deshalb war codex nach jedem leeren Aufruf still und kimi nicht. Das Briefing verlangt jetzt fuer alle den Hintergrundprozess (`agenthub work --agent `), der Tool-Call ist nur noch Notnagel. Damit ist der Unterschied strukturell adressiert statt agentenspezifisch umgangen. Co-Authored-By: Claude Opus 5 (1M context) --- src/cli/commands/startAgent.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/cli/commands/startAgent.ts b/src/cli/commands/startAgent.ts index 0537fee..0e75707 100644 --- a/src/cli/commands/startAgent.ts +++ b/src/cli/commands/startAgent.ts @@ -32,9 +32,15 @@ export function agentBriefing(agent: string, role: string): string { `Du bist "${agent}" im AgentHub (Rolle: ${role}).`, '', 'SO ARBEITEST DU:', - `1. Ruf JETZT agenthub_work(agent="${agent}", role="${role}", timeoutSec=50) auf.`, - ' Danach nach JEDEM abgeschlossenen Schritt erneut — auch nach agenthub_task_review.', - ' Beende deinen Turn nie, ohne agenthub_work neu gestartet zu haben.', + '1. Starte den Work-Loop als HINTERGRUNDPROZESS, nicht als Tool-Call im Turn:', + ` agenthub work --agent ${agent} --role ${role}`, + ' im Hintergrund laufen lassen. Ein Hintergrundprozess ueberlebt das Ende', + ' deines Turns — ein Tool-Call nicht. Genau daran ist die Erreichbarkeit', + ' bisher gescheitert: nach einem leeren Tool-Call war der Agent still.', + ' Faellt der Prozess weg, starte ihn neu — auch nach agenthub_task_review.', + ` (Notfalls geht auch das Tool agenthub_work(agent="${agent}", role="${role}");`, + ' dann OHNE timeoutSec — die passende Wartezeit steht im Roster und ein', + ' explizites Argument wuerde sie ueberschreiben.)', '2. Deine Aufgabe steht IMMER im Handoff des Tasks. Lies ihn, bevor du baust.', `3. Logge nach jedem Teilschritt: agenthub_task_log(id, text, agent="${agent}").`, '',