diff --git a/packages/tui/src/mini/footer.command.tsx b/packages/tui/src/mini/footer.command.tsx index 3861fd587dc..2c58dd124e3 100644 --- a/packages/tui/src/mini/footer.command.tsx +++ b/packages/tui/src/mini/footer.command.tsx @@ -407,7 +407,7 @@ export function RunCommandMenuBody(props: { name: "compact", display: "Compact session", footer: "/compact", - keywords: "compact summarize session context", + keywords: "compact session context", }, { action: "slash", diff --git a/packages/tui/src/mini/footer.prompt.tsx b/packages/tui/src/mini/footer.prompt.tsx index 090cfc02879..6a1a6ff7eb7 100644 --- a/packages/tui/src/mini/footer.prompt.tsx +++ b/packages/tui/src/mini/footer.prompt.tsx @@ -406,7 +406,7 @@ export function createPromptState(input: PromptInput): PromptState { kind: "slash", name: "compact", display: "/compact", - description: "summarize the session to reduce context usage", + description: "compact older session context to free space", } satisfies SlashOption, { kind: "slash", name: "exit", display: "/exit", description: "close OpenCode" } satisfies SlashOption, ] diff --git a/packages/tui/src/mini/prompt.shared.ts b/packages/tui/src/mini/prompt.shared.ts index be1e24db867..b1951dc9723 100644 --- a/packages/tui/src/mini/prompt.shared.ts +++ b/packages/tui/src/mini/prompt.shared.ts @@ -54,8 +54,7 @@ export function isNewCommand(input: string): boolean { } export function isCompactCommand(input: string): boolean { - const text = input.trim().toLowerCase() - return text === "/compact" || text === "/summarize" + return input.trim().toLowerCase() === "/compact" } export function createPromptHistory(items?: RunPrompt[]): PromptHistoryState { diff --git a/packages/tui/src/routes/session/index.tsx b/packages/tui/src/routes/session/index.tsx index ec037110ef2..6a295389a39 100644 --- a/packages/tui/src/routes/session/index.tsx +++ b/packages/tui/src/routes/session/index.tsx @@ -635,7 +635,6 @@ export function Session() { group: "Session", slash: { name: "compact", - aliases: ["summarize"], }, run: () => { void client.api.session.compact({ sessionID: route.sessionID }) diff --git a/packages/tui/test/mini/prompt.shared.test.ts b/packages/tui/test/mini/prompt.shared.test.ts index 748228ede60..cec46600b75 100644 --- a/packages/tui/test/mini/prompt.shared.test.ts +++ b/packages/tui/test/mini/prompt.shared.test.ts @@ -1,6 +1,7 @@ import { describe, expect, test } from "bun:test" import { createPromptHistory, + isCompactCommand, isExitCommand, isNewCommand, movePromptHistory, @@ -98,4 +99,10 @@ describe("run prompt shared", () => { expect(isNewCommand(" /NEW ")).toBe(true) expect(isNewCommand("/new now")).toBe(false) }) + + test("recognizes only the compact command", () => { + expect(isCompactCommand("/compact")).toBe(true) + expect(isCompactCommand(" /COMPACT ")).toBe(true) + expect(isCompactCommand("/summarize")).toBe(false) + }) }) diff --git a/packages/tui/test/mini/runtime.queue.test.ts b/packages/tui/test/mini/runtime.queue.test.ts index c9a73e5adcf..d5499ec00d7 100644 --- a/packages/tui/test/mini/runtime.queue.test.ts +++ b/packages/tui/test/mini/runtime.queue.test.ts @@ -80,7 +80,7 @@ describe("run runtime queue", () => { ]) }) - test.each(["/compact", "/summarize"])("treats %s as a local compaction command", async (command) => { + test("treats /compact as a local compaction command", async () => { const ui = createFooterApiFixture() const seen: string[] = [] let compacted = 0 @@ -96,7 +96,7 @@ describe("run runtime queue", () => { }, }) - ui.submit(command) + ui.submit("/compact") ui.submit("hello") await task