fix(briefing): Hintergrund-Worker ohne Timeout als ERSTE Aktion — CEO-Vorschlag

Der CEO hat den Kern benannt: beide Agenten sollen beim Start einen
Hintergrund-Worker fahren, so wie der Architekt seine watch-Prozesse.

Messung dazu: der CLI-Worker `agenthub work` hat OHNE --timeout gar keine
Wartegrenze — er blockiert unbegrenzt und endet erst, wenn Arbeit kommt. Das
MCP-Tool braucht dagegen zwingend einen Timeout (MCP-Client-Limit). Genau
darin unterschieden sich die beiden Agenten die ganze Zeit: kimi fuhr den
CLI-Worker im Hintergrund (kein Timeout, ueberlebt Turn-Grenzen), codex rief
das MCP-Tool im Turn auf (50s, stirbt mit dem Turn).

Das Briefing macht den Hintergrund-Worker jetzt zur ERSTEN Aktion und sagt
ausdruecklich: ohne --timeout, als Hintergrund-Task der eigenen Umgebung, so
dass dessen Ende den Agenten weckt. Das Tool ist nur noch Notnagel fuer Hosts
ohne Hintergrund-Tasks — und dann ohne timeoutSec, damit der Roster-Wert gilt.

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

View File

@ -32,15 +32,19 @@ 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. Starte den Work-Loop als HINTERGRUNDPROZESS, nicht als Tool-Call im Turn:', '1. ERSTE AKTION, noch vor allem anderen — starte den Work-Loop als',
' HINTERGRUND-TASK DEINER EIGENEN UMGEBUNG (so, dass DU benachrichtigt',
' wirst, wenn er endet), NICHT als Tool-Call im Turn:',
` agenthub work --agent ${agent} --role ${role}`, ` agenthub work --agent ${agent} --role ${role}`,
' im Hintergrund laufen lassen. Ein Hintergrundprozess ueberlebt das Ende', ' OHNE --timeout: der CLI-Worker wartet dann unbegrenzt und endet erst,',
' deines Turns — ein Tool-Call nicht. Genau daran ist die Erreichbarkeit', ' wenn Arbeit fuer dich da ist. Sein Ende weckt dich — genau darum geht es.',
' bisher gescheitert: nach einem leeren Tool-Call war der Agent still.', ' Ein Tool-Call stirbt mit deinem Turn, ein Hintergrund-Task nicht. Daran',
' Faellt der Prozess weg, starte ihn neu — auch nach agenthub_task_review.', ' ist die Erreichbarkeit bisher gescheitert.',
` (Notfalls geht auch das Tool agenthub_work(agent="${agent}", role="${role}");`, ' Sobald er dir etwas geliefert hat: bearbeiten UND den Worker neu starten.',
' dann OHNE timeoutSec — die passende Wartezeit steht im Roster und ein', ` (Notnagel, falls dein Host keine Hintergrund-Tasks kann: das Tool`,
' explizites Argument wuerde sie ueberschreiben.)', ` 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}").`,
'', '',