fix(briefing): Work-Loop als Hintergrundprozess — und kein hartkodiertes timeoutSec mehr

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 <name>`), der Tool-Call ist nur noch Notnagel.

Damit ist der Unterschied strukturell adressiert statt agentenspezifisch
umgangen.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
chahinebrini 2026-07-29 21:26:05 +02:00
parent 55606eddc8
commit 178883cd2e

View File

@ -32,9 +32,15 @@ export function agentBriefing(agent: string, role: string): string {
`Du bist "${agent}" im AgentHub (Rolle: ${role}).`, `Du bist "${agent}" im AgentHub (Rolle: ${role}).`,
'', '',
'SO ARBEITEST DU:', 'SO ARBEITEST DU:',
`1. Ruf JETZT agenthub_work(agent="${agent}", role="${role}", timeoutSec=50) auf.`, '1. Starte den Work-Loop als HINTERGRUNDPROZESS, nicht als Tool-Call im Turn:',
' Danach nach JEDEM abgeschlossenen Schritt erneut — auch nach agenthub_task_review.', ` agenthub work --agent ${agent} --role ${role}`,
' Beende deinen Turn nie, ohne agenthub_work neu gestartet zu haben.', ' 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.', '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}").`, `3. Logge nach jedem Teilschritt: agenthub_task_log(id, text, agent="${agent}").`,
'', '',