From 317e0a60a3b263db447e7f6e7ad75d782b7c61a7 Mon Sep 17 00:00:00 2001 From: 35C4n0r Date: Wed, 14 Jan 2026 08:55:41 +0530 Subject: [PATCH 1/3] fix: update message box formatting detection for claude --- lib/msgfmt/message_box.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/msgfmt/message_box.go b/lib/msgfmt/message_box.go index 13efaf11..e28663aa 100644 --- a/lib/msgfmt/message_box.go +++ b/lib/msgfmt/message_box.go @@ -28,7 +28,7 @@ func findGreaterThanMessageBox(lines []string) int { func findGenericSlimMessageBox(lines []string) int { for i := len(lines) - 3; i >= max(len(lines)-9, 0); i-- { if strings.Contains(lines[i], "───────────────") && - (strings.Contains(lines[i+1], "|") || strings.Contains(lines[i+1], "│")) && + (strings.Contains(lines[i+1], "|") || strings.Contains(lines[i+1], "│")) || strings.Contains(lines[i+1], "❯") && strings.Contains(lines[i+2], "───────────────") { return i } From c24083562aa43375addef9b4886f6735919e8447 Mon Sep 17 00:00:00 2001 From: 35C4n0r Date: Wed, 14 Jan 2026 09:00:31 +0530 Subject: [PATCH 2/3] chore: update tests --- lib/msgfmt/testdata/format/claude/auto-accept-edits/msg.txt | 6 +++--- lib/msgfmt/testdata/format/claude/first_message/msg.txt | 6 +++--- lib/msgfmt/testdata/format/claude/multi-line-input/msg.txt | 5 +++-- .../testdata/format/claude/remove-task-tool-call/msg.txt | 6 +++--- lib/msgfmt/testdata/format/claude/second_message/msg.txt | 6 +++--- 5 files changed, 15 insertions(+), 14 deletions(-) diff --git a/lib/msgfmt/testdata/format/claude/auto-accept-edits/msg.txt b/lib/msgfmt/testdata/format/claude/auto-accept-edits/msg.txt index c120dc8f..44e83af9 100644 --- a/lib/msgfmt/testdata/format/claude/auto-accept-edits/msg.txt +++ b/lib/msgfmt/testdata/format/claude/auto-accept-edits/msg.txt @@ -13,8 +13,8 @@ 3. Use Claude to help with file analysis, editing, bash commands and git 4. Be as specific as you would with another engineer for the best results -╭──────────────────────────────────────────────────────────────────────────────╮ -│ > │ -╰──────────────────────────────────────────────────────────────────────────────╯ +─────────────────────────────────────────────────────────────────── +❯ +─────────────────────────────────────────────────────────────────── ⏵⏵ auto-accept edits on (shift+tab to ✓ Update installed • Restart to toggle) apply diff --git a/lib/msgfmt/testdata/format/claude/first_message/msg.txt b/lib/msgfmt/testdata/format/claude/first_message/msg.txt index d1a9bb0a..cf20d944 100644 --- a/lib/msgfmt/testdata/format/claude/first_message/msg.txt +++ b/lib/msgfmt/testdata/format/claude/first_message/msg.txt @@ -13,7 +13,7 @@ 3. Use Claude to help with file analysis, editing, bash commands and git 4. Be as specific as you would with another engineer for the best results -╭──────────────────────────────────────────────────────────────────────────────╮ -│ > Try "refactor handler.go" │ -╰──────────────────────────────────────────────────────────────────────────────╯ +─────────────────────────────────────────────────────────────────── +❯ +─────────────────────────────────────────────────────────────────── ? for shortcuts \ No newline at end of file diff --git a/lib/msgfmt/testdata/format/claude/multi-line-input/msg.txt b/lib/msgfmt/testdata/format/claude/multi-line-input/msg.txt index b088c638..09f52bc1 100644 --- a/lib/msgfmt/testdata/format/claude/multi-line-input/msg.txt +++ b/lib/msgfmt/testdata/format/claude/multi-line-input/msg.txt @@ -26,5 +26,6 @@ ⏺ This code is from /Users/hugodutka/dev/agentapi/chat/src/components/ChatInterface.tsx -╭──────────────────────────────────────────────────────────────────────────────╮ -│ > │ \ No newline at end of file +─────────────────────────────────────────────────────────────────── +❯ +─────────────────────────────────────────────────────────────────── \ No newline at end of file diff --git a/lib/msgfmt/testdata/format/claude/remove-task-tool-call/msg.txt b/lib/msgfmt/testdata/format/claude/remove-task-tool-call/msg.txt index 6c8a0acd..cc643416 100644 --- a/lib/msgfmt/testdata/format/claude/remove-task-tool-call/msg.txt +++ b/lib/msgfmt/testdata/format/claude/remove-task-tool-call/msg.txt @@ -73,8 +73,8 @@ } -────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ->  -────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +─────────────────────────────────────────────────────────────────── +❯ +─────────────────────────────────────────────────────────────────── ? for shortcuts ⧉ In message_box.go diff --git a/lib/msgfmt/testdata/format/claude/second_message/msg.txt b/lib/msgfmt/testdata/format/claude/second_message/msg.txt index b95c90f2..803b6044 100644 --- a/lib/msgfmt/testdata/format/claude/second_message/msg.txt +++ b/lib/msgfmt/testdata/format/claude/second_message/msg.txt @@ -17,7 +17,7 @@ ⏺ I'm doing well! How can I help you with your coding project today? -╭──────────────────────────────────────────────────────────────────────────────╮ -│ >  │ -╰──────────────────────────────────────────────────────────────────────────────╯ +─────────────────────────────────────────────────────────────────── +❯ +─────────────────────────────────────────────────────────────────── ? for shortcuts \ No newline at end of file From 0d659b479005df535f98ba1b7eb451b16a788137 Mon Sep 17 00:00:00 2001 From: 35C4n0r Date: Wed, 14 Jan 2026 09:12:40 +0530 Subject: [PATCH 3/3] minor fix --- lib/msgfmt/message_box.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/msgfmt/message_box.go b/lib/msgfmt/message_box.go index e28663aa..51bd592b 100644 --- a/lib/msgfmt/message_box.go +++ b/lib/msgfmt/message_box.go @@ -28,7 +28,7 @@ func findGreaterThanMessageBox(lines []string) int { func findGenericSlimMessageBox(lines []string) int { for i := len(lines) - 3; i >= max(len(lines)-9, 0); i-- { if strings.Contains(lines[i], "───────────────") && - (strings.Contains(lines[i+1], "|") || strings.Contains(lines[i+1], "│")) || strings.Contains(lines[i+1], "❯") && + (strings.Contains(lines[i+1], "|") || strings.Contains(lines[i+1], "│") || strings.Contains(lines[i+1], "❯")) && strings.Contains(lines[i+2], "───────────────") { return i }