You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(agents): prevent orchestrator from rushing ahead of background agents
Tighten Background Result Collection instructions so the model waits
for explore/librarian results instead of duplicating their work and
delivering premature answers.
- Remove 'Continue working immediately' which models interpreted as
'do ALL work yourself, ignore agents'
- Clarify step 2: only do DIFFERENT independent work while waiting
- Add explicit step 3: end response when no other work remains
- Add 'not for files you already know' to explore section header
Fixes#2124, fixes#1967
task(subagent_type="librarian", run_in_background=true, load_skills=[], description="Find JWT security docs", prompt="I'm implementing JWT auth and need current security best practices to choose token storage (httpOnly cookies vs localStorage) and set expiration policy. Find: OWASP auth guidelines, recommended token lifetimes, refresh token rotation strategies, common JWT vulnerabilities. Skip 'what is JWT' tutorials — production security guidance only.")
335
335
task(subagent_type="librarian", run_in_background=true, load_skills=[], description="Find Express auth patterns", prompt="I'm building Express auth middleware and need production-quality patterns to structure my middleware chain. Find how established Express apps (1000+ stars) handle: middleware ordering, token refresh, role-based access control, auth error propagation. Skip basic tutorials — I need battle-tested patterns with proper error handling.")
336
-
// Continue working immediately. System notifies on completion — collect with background_output then.
337
-
338
336
// WRONG: Sequential or blocking
339
337
result = task(..., run_in_background=false) // Never wait synchronously for explore/librarian
340
338
\`\`\`
341
339
342
340
### Background Result Collection:
343
341
1. Launch parallel agents \u2192 receive task_ids
344
-
2. Continue immediate work
345
-
3. System sends \`<system-reminder>\` on each task completion — then call \`background_output(task_id="...")\`
346
-
4. Need results not yet ready? **End your response.** The notification will trigger your next turn.
347
-
5. Cleanup: Cancel disposable tasks individually via \`background_cancel(taskId="...")\`
342
+
2. If you have DIFFERENT independent work \u2192 do it now
343
+
3. Otherwise \u2192 **END YOUR RESPONSE.**
344
+
4. System sends \`<system-reminder>\` on completion \u2192 triggers your next turn
345
+
5. Collect via \`background_output(task_id="...")\`
346
+
6. Cleanup: Cancel disposable tasks individually via \`background_cancel(taskId="...")\`
0 commit comments