summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/components
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-09-11 02:22:14 -0400
committerDax Raad <[email protected]>2025-09-11 02:22:51 -0400
commit4c94753eda3714176a29c651e4bd43c5ff079c14 (patch)
tree05e9b98f62808bbfe3d75bd0c8b3e807aa673d93 /packages/tui/internal/components
parentc3a55c35bbd5c949193cd0115592ab0375201d74 (diff)
downloadopencode-4c94753eda3714176a29c651e4bd43c5ff079c14.tar.gz
opencode-4c94753eda3714176a29c651e4bd43c5ff079c14.zip
compaction improvements
Diffstat (limited to 'packages/tui/internal/components')
-rw-r--r--packages/tui/internal/components/chat/editor.go3
-rw-r--r--packages/tui/internal/components/chat/messages.go6
2 files changed, 9 insertions, 0 deletions
diff --git a/packages/tui/internal/components/chat/editor.go b/packages/tui/internal/components/chat/editor.go
index 907734a12..121993927 100644
--- a/packages/tui/internal/components/chat/editor.go
+++ b/packages/tui/internal/components/chat/editor.go
@@ -385,6 +385,9 @@ func (m *editorComponent) Content() string {
} else if m.app.IsBusy() {
keyText := m.getInterruptKeyText()
status := "working"
+ if m.app.Session.Time.Compacting > 0 {
+ status = "compacting"
+ }
if m.app.CurrentPermission.ID != "" {
status = "waiting for permission"
}
diff --git a/packages/tui/internal/components/chat/messages.go b/packages/tui/internal/components/chat/messages.go
index 053d538a4..8e36d99c1 100644
--- a/packages/tui/internal/components/chat/messages.go
+++ b/packages/tui/internal/components/chat/messages.go
@@ -365,6 +365,9 @@ func (m *messagesComponent) renderView() tea.Cmd {
lastAssistantMessage := "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
for _, msg := range slices.Backward(m.app.Messages) {
if assistant, ok := msg.Info.(opencode.AssistantMessage); ok {
+ if assistant.Time.Completed > 0 {
+ break
+ }
lastAssistantMessage = assistant.ID
break
}
@@ -475,6 +478,9 @@ func (m *messagesComponent) renderView() tea.Cmd {
}
case opencode.AssistantMessage:
+ if casted.Summary {
+ continue
+ }
if casted.ID == m.app.Session.Revert.MessageID {
reverted = true
revertedMessageCount = 1