summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/util
diff options
context:
space:
mode:
authorspoons-and-mirrors <[email protected]>2025-08-10 03:22:16 +0200
committerGitHub <[email protected]>2025-08-09 20:22:16 -0500
commitbd4319f2bc28c0ad16946107e7d1d50fa924527e (patch)
treee1a404ee7e1aebe7f6a4b804a847b2530ca37de9 /packages/tui/internal/util
parent696ab1a752e5bfa520379e21d933be1cd3058ce0 (diff)
downloadopencode-bd4319f2bc28c0ad16946107e7d1d50fa924527e.tar.gz
opencode-bd4319f2bc28c0ad16946107e7d1d50fa924527e.zip
Feat: Add Agent Name in the LLM Response Footer (and re-order it) (#1770)
Diffstat (limited to 'packages/tui/internal/util')
-rw-r--r--packages/tui/internal/util/color.go24
1 files changed, 23 insertions, 1 deletions
diff --git a/packages/tui/internal/util/color.go b/packages/tui/internal/util/color.go
index f0d73bcb2..b387ca655 100644
--- a/packages/tui/internal/util/color.go
+++ b/packages/tui/internal/util/color.go
@@ -3,6 +3,9 @@ package util
import (
"regexp"
"strings"
+
+ "github.com/charmbracelet/lipgloss/v2/compat"
+ "github.com/sst/opencode/internal/theme"
)
var csiRE *regexp.Regexp
@@ -89,5 +92,24 @@ func ConvertRGBToAnsi16Colors(s string) string {
// func looksLikeByte(tok string) bool {
// v, err := strconv.Atoi(tok)
-// return err == nil && v >= 0 && v <= 255
+// return err == nil && v >= 0 && v <= 255
// }
+
+// GetAgentColor returns the color for a given agent index, matching the status bar colors
+func GetAgentColor(agentIndex int) compat.AdaptiveColor {
+ t := theme.CurrentTheme()
+ agentColors := []compat.AdaptiveColor{
+ t.TextMuted(),
+ t.Secondary(),
+ t.Accent(),
+ t.Success(),
+ t.Warning(),
+ t.Primary(),
+ t.Error(),
+ }
+
+ if agentIndex >= 0 && agentIndex < len(agentColors) {
+ return agentColors[agentIndex]
+ }
+ return t.Secondary() // default fallback
+}