FG-0407 Multi-Session Orchestration
Description
Running multiple agent sessions simultaneously, each focused on a different task or domain, coordinated through shared state and artifact tracking. The pattern is parallel dispatch: independent work streams that produce artifacts consumed by other streams, with a human operator routing decisions between sessions. It mirrors operational environments where multiple teams execute simultaneously under a single commander's direction.
Implementation
Assign each session a unique identifier and a clear mission scope. Track active sessions in a shared status document with per-session state. Define artifact handoff points: when one session produces output that another session needs. Use separate output files per session to avoid write conflicts. The human operator is the router, not a participant in every session simultaneously. Check in with each session at natural breakpoints.
Success Indicators
- Multiple independent work streams complete in the time one sequential stream would take
- No cross-session file conflicts or state corruption
- Artifact handoffs between sessions are clean and documented
- The human operator maintains situational awareness across all active sessions
Failure Modes
- Overloading the human operator with too many active sessions, degrading decision quality across all of them
- Sessions that are nominally independent but actually share state, causing silent conflicts
- Losing track of which session produced which artifacts, making integration chaotic
- Running sessions in parallel that have serial dependencies, producing work that needs to be redone
Sub-Methods 3
Assign each parallel session a unique identifier and a one-line mission statement. Track all active sessions in a single status document. This prevents the 'which session was doing that?' problem that emerges when running more than two sessions simultaneously.
Each session writes to its own output files and directories. No two sessions modify the same file simultaneously. When sessions need to share artifacts, one session produces and the other consumes after the producer signals completion. This eliminates merge conflicts and race conditions in parallel execution.
The human operator acts as a router between sessions, not a participant in all sessions at once. When a session reaches a decision point, it queues the decision and waits. The operator processes decision queues in priority order. This prevents context-switching overhead from degrading decision quality.