summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/components/chat
diff options
context:
space:
mode:
authorElecTwix <[email protected]>2025-10-30 08:13:18 +0300
committerGitHub <[email protected]>2025-10-30 00:13:18 -0500
commitd983b9485d91306da6ca72d726348812840f2831 (patch)
tree333133b11da67821b02f35e6b9ebb713946c7a73 /packages/tui/internal/components/chat
parent14836de27662813562b9ced3285f0ef5b1103b86 (diff)
downloadopencode-d983b9485d91306da6ca72d726348812840f2831.tar.gz
opencode-d983b9485d91306da6ca72d726348812840f2831.zip
fix: add doom loop detection (#3445)
Co-authored-by: Aiden Cline <[email protected]>
Diffstat (limited to 'packages/tui/internal/components/chat')
-rw-r--r--packages/tui/internal/components/chat/message.go12
1 files changed, 8 insertions, 4 deletions
diff --git a/packages/tui/internal/components/chat/message.go b/packages/tui/internal/components/chat/message.go
index fc5a21ad1..801545a88 100644
--- a/packages/tui/internal/components/chat/message.go
+++ b/packages/tui/internal/components/chat/message.go
@@ -504,7 +504,11 @@ func renderToolDetails(
base := styles.NewStyle().Background(backgroundColor)
text := base.Foreground(t.Text()).Bold(true).Render
muted := base.Foreground(t.TextMuted()).Render
- permissionContent = "Permission required to run this tool:\n\n"
+ if permission.Type == "doom-loop" {
+ permissionContent = permission.Title + "\n\n"
+ } else {
+ permissionContent = "Permission required to run this tool:\n\n"
+ }
permissionContent += text(
"enter ",
) + muted(
@@ -642,9 +646,9 @@ func renderToolDetails(
for _, item := range todos.([]any) {
todo := item.(map[string]any)
content := todo["content"]
- if content == nil {
- continue
- }
+ if content == nil {
+ continue
+ }
switch todo["status"] {
case "completed":
body += fmt.Sprintf("- [x] %s\n", content)