-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Open
Labels
opentuiThis relates to changes in v1.0, now that opencode uses opentuiThis relates to changes in v1.0, now that opencode uses opentui
Description
Feature Request: Agent Session Tab Bar Navigation
Summary
Add a horizontal tab bar to the OpenCode TUI for navigating between concurrent agent sessions, similar to kitty terminal tabs.
Motivation
When using the orchestrator pattern with multiple spawned subagents (up to 10 concurrent), users need a way to:
- See all active/completed agent sessions at a glance
- Quickly switch between agent outputs
- Understand the parent-child relationship (orchestrator → subagents)
- Monitor status of parallel tasks
Currently, OpenCode uses Ctrl+X + Left/Right arrows for session navigation, but there's no visual indicator of available sessions.
Proposed Design
Tab Bar Location: Top of TUI, below any title bar
Tab Content:
- Agent type (e.g.,
orchestrator,frontend-engineer,researcher) - Truncated task description
- Status indicator (running/complete/failed)
Tab Ordering:
- Leftmost: Parent/orchestrator agent (the one that spawned others)
- Right: Subagents in spawn order
Keybindings (proposed):
| Action | Keybinding |
|---|---|
| Next tab | Shift+Tab |
| Previous tab | Shift+Backtab |
| Go to tab N | Alt+1 to Alt+9 |
| Close completed tab | Ctrl+W |
| Toggle tab bar | Ctrl+T |
Status Indicators:
- 🔄 Running (spinner animation)
- ✓ Completed
- ✗ Failed
- Optional: Color by model tier (Haiku/Sonnet/Opus)
Configuration (new tui options)
{
"tui": {
"scroll_speed": 3,
"tab_bar": {
"enabled": true,
"position": "top",
"show_status": true,
"show_model_colors": true,
"max_tab_width": 30
}
}
}Mock-up
┌────────────────────────────────────────────────────────────────────────┐
│ [●orchestrator: dashboard] [🔄frontend: Cards] [✓test: unit] [🔄style] │
├────────────────────────────────────────────────────────────────────────┤
│ │
│ Currently viewing: orchestrator │
│ ... agent output ... │
│ │
└────────────────────────────────────────────────────────────────────────┘
Technical Considerations
- Session state tracking for multi-agent orchestrations
- Tab lifecycle management (spawn, active, complete, close)
- Keybinding conflict resolution (check
Shift+Tabavailability) - Performance with many concurrent tabs
Alternatives Considered
- Split panes: More complex, less scalable for 10 agents
- Session list sidebar: Takes horizontal space, less terminal-native
- Numbered hotkeys only: Less discoverable than visual tabs
Related
- Kitty terminal tabs (inspiration for UX)
- Multi-agent orchestration workflows
Metadata
Metadata
Assignees
Labels
opentuiThis relates to changes in v1.0, now that opencode uses opentuiThis relates to changes in v1.0, now that opencode uses opentui