Preflight Checklist
Problem Statement
When using specialized agents (launched via the Task tool), users cannot tell when Claude Code is operating in agent mode versus regular mode. This creates significant UX issues:
Core Problems:
- Invisible Mode Transitions - Agents launch and complete silently with no visual indicator, leaving users confused about which system is responding
- Lost Context Awareness - Users don't know if they're getting specialized agent capabilities or regular responses, leading to incorrect assumptions about answer quality and scope
- Workflow Disruption - Tasks may be handled incorrectly when users assume an agent is still active but it has already completed and returned to regular mode
- Manual Verification Required - Users must frequently ask "what mode am I in?" or infer from conversation context, breaking flow
- No Session Context - Beyond basic directory and token warnings, users lack visibility into critical session state: active model, token usage progress, costs, active modes, etc.
Current State:
- Agent launches with no persistent UI feedback
- Agent completion happens silently
- No visual difference between agent vs regular responses
- Status line shows only: directory, token warning (>200K), session cost
Impact:
- Reduced trust in agent system
- Decreased productivity from context-switching confusion
- Missed opportunities to leverage specialized agents effectively
- Poor user experience compared to modern IDE status bars
Proposed Solution
Proposed Solution
Add a customizable status bar system with persistent agent mode indicator as the primary feature.
Core Features:
- Agent Mode Indicator (Primary)
- Persistent visual indicator showing when agent mode is active
- Display format: 🤖 Agent: {agent-name} in status bar
- Nested agent support: 🤖 parent → child → grandchild
- Color-coded by agent type (using existing subagent color system)
- Mode transition notifications with configurable verbosity
- Expanded Status Bar Widgets
Beyond agent mode, create a modular widget system for comprehensive session context:
| Widget |
Purpose |
Example Display |
| 🤖 Agent Mode |
Show active agent |
🤖 code-reviewer |
| 🧠 Model |
Current Claude model |
sonnet-4.5 |
| 📊 Token Usage |
Visual progress bar |
[████░░] 75% (150K/200K) |
| 💰 Cost |
Session cost tracking |
$0.0234 |
| ⏱ Duration |
Session time |
1h 23m |
| 💭 Active Modes |
Special modes |
💭 Thinking |
| 🔒 Permissions |
Tool restrictions |
🔒 Restricted |
| ⎇ Git |
Branch/status |
⎇ main ↑3 |
- User Customization
Configure via slash commands
/statusbar preset minimal # Show only essentials
/statusbar preset verbose # Show everything
/statusbar add token-usage # Add specific widget
/statusbar remove cost # Remove widget
Or configure in settings.json
{
"statusBar": {
"widgets": ["agent-mode", "model", "token-usage", "cost"],
"format": "compact",
"notifications": {
"verbosity": "normal" # quiet | normal | verbose
}
}
}
- Example Status Bar Outputs
Minimal preset
/project │ 🤖 general-purpose │ 45%
Default preset
/project │ 🤖 Agent: code-reviewer │ 90K/200K tokens │ $0.02
Verbose preset
~/dev/project (⎇ main) │ 🤖 Agent: general-purpose (2m 34s) │ sonnet-4.5 │ [████████░░] 80% │ ⏱ 1h 23m │ 💰 $0.0234 │ 💭 Thinking
- Mode Transition Notifications
🤖 Launching agent: general-purpose
⚙️ Agent mode active: general-purpose
[agent performs work]
✅ Agent general-purpose completed (2m 34s)
🔄 Returning to regular mode
Implementation Phases:
Phase 1 (MVP): Agent mode indicator + basic notificationsPhase 2: Full widget system + presetsPhase 3: Custom widgets via hooksPhase 4: API for programmatic access
Benefits:
- ✅ Solves core problem: always know which mode is active
- ✅ Extends to comprehensive session awareness (tokens, cost, model, etc.)
- ✅ User-configurable for different workflows
- ✅ Follows existing patterns (hooks, status line, subagent colors)
- ✅ Non-breaking: defaults preserve current behavior
FEATURE_PROPOSAL_CUSTOMIZABLE_STATUS_BAR.md
Alternative Solutions
No response
Priority
High - Significant impact on productivity
Feature Category
CLI commands and flags
Use Case Example
No response
Additional Context
No response
Preflight Checklist
Problem Statement
When using specialized agents (launched via the Task tool), users cannot tell when Claude Code is operating in agent mode versus regular mode. This creates significant UX issues:
Core Problems:
Current State:
Impact:
Proposed Solution
Proposed Solution
Add a customizable status bar system with persistent agent mode indicator as the primary feature.
Core Features:
Beyond agent mode, create a modular widget system for comprehensive session context:
Configure via slash commands
/statusbar preset minimal # Show only essentials
/statusbar preset verbose # Show everything
/statusbar add token-usage # Add specific widget
/statusbar remove cost # Remove widget
Or configure in settings.json
{
"statusBar": {
"widgets": ["agent-mode", "model", "token-usage", "cost"],
"format": "compact",
"notifications": {
"verbosity": "normal" # quiet | normal | verbose
}
}
}
Minimal preset
/project │ 🤖 general-purpose │ 45%
Default preset
/project │ 🤖 Agent: code-reviewer │ 90K/200K tokens │ $0.02
Verbose preset
~/dev/project (⎇ main) │ 🤖 Agent: general-purpose (2m 34s) │ sonnet-4.5 │ [████████░░] 80% │ ⏱ 1h 23m │ 💰 $0.0234 │ 💭 Thinking
🤖 Launching agent: general-purpose
⚙️ Agent mode active: general-purpose
[agent performs work]
✅ Agent general-purpose completed (2m 34s)
🔄 Returning to regular mode
Implementation Phases:
Phase 1 (MVP): Agent mode indicator + basic notificationsPhase 2: Full widget system + presetsPhase 3: Custom widgets via hooksPhase 4: API for programmatic access
Benefits:
FEATURE_PROPOSAL_CUSTOMIZABLE_STATUS_BAR.md
Alternative Solutions
No response
Priority
High - Significant impact on productivity
Feature Category
CLI commands and flags
Use Case Example
No response
Additional Context
No response