feat(tmux): add per-rig color themes and dynamic status line (gt-vc1n)
Add tmux status bar theming for Gas Town sessions: - Per-rig color themes auto-assigned via consistent hashing - 10 curated dark themes (ocean, forest, rust, plum, etc.) - Special gold/dark theme for Mayor - Dynamic status line showing current issue and mail count - Mayor status shows polecat/rig counts New commands: - gt theme --list: show available themes - gt theme apply: apply to running sessions - gt issue set/clear: agents update their current issue - gt status-line: internal command for tmux refresh Status bar format: - Left: [rig/worker] role - Right: <issue> | <mail> | HH:MM 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -52,6 +52,23 @@ type RigConfig struct {
|
||||
Type string `json:"type"` // "rig"
|
||||
Version int `json:"version"` // schema version
|
||||
MergeQueue *MergeQueueConfig `json:"merge_queue,omitempty"` // merge queue settings
|
||||
Theme *ThemeConfig `json:"theme,omitempty"` // tmux theme settings
|
||||
}
|
||||
|
||||
// ThemeConfig represents tmux theme settings for a rig.
|
||||
type ThemeConfig struct {
|
||||
// Name picks from the default palette (e.g., "ocean", "forest").
|
||||
// If empty, a theme is auto-assigned based on rig name.
|
||||
Name string `json:"name,omitempty"`
|
||||
|
||||
// Custom overrides the palette with specific colors.
|
||||
Custom *CustomTheme `json:"custom,omitempty"`
|
||||
}
|
||||
|
||||
// CustomTheme allows specifying exact colors for the status bar.
|
||||
type CustomTheme struct {
|
||||
BG string `json:"bg"` // Background color (hex or tmux color name)
|
||||
FG string `json:"fg"` // Foreground color (hex or tmux color name)
|
||||
}
|
||||
|
||||
// MergeQueueConfig represents merge queue settings for a rig.
|
||||
|
||||
Reference in New Issue
Block a user