summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAriane Emory <[email protected]>2025-11-28 16:01:05 -0500
committerGitHub <[email protected]>2025-11-28 15:01:05 -0600
commit33c63be980ce2040bee45a5a733aba67121d61e8 (patch)
tree3b6b9d2bd2059116c7fec20c36f7974413695d12
parentb6efca42b480029c0e43995e1fd71418896728cc (diff)
downloadopencode-33c63be980ce2040bee45a5a733aba67121d61e8.tar.gz
opencode-33c63be980ce2040bee45a5a733aba67121d61e8.zip
feat: persist thinking blocks display to KV and indicate its current display state in the command_list (resolves #4582) (#4810)
Co-authored-by: GitHub Action <[email protected]> Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com> Co-authored-by: rekram1-node <[email protected]> Co-authored-by: Aiden Cline <[email protected]>
-rw-r--r--packages/opencode/src/cli/cmd/tui/component/prompt/autocomplete.tsx2
-rw-r--r--packages/opencode/src/cli/cmd/tui/routes/session/index.tsx10
2 files changed, 8 insertions, 4 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/component/prompt/autocomplete.tsx b/packages/opencode/src/cli/cmd/tui/component/prompt/autocomplete.tsx
index 4232f3ae8..f74a176ec 100644
--- a/packages/opencode/src/cli/cmd/tui/component/prompt/autocomplete.tsx
+++ b/packages/opencode/src/cli/cmd/tui/component/prompt/autocomplete.tsx
@@ -239,7 +239,7 @@ export function Autocomplete(props: {
},
{
display: "/thinking",
- description: "toggle thinking blocks",
+ description: "toggle thinking visibility",
onSelect: () => command.trigger("session.toggle.thinking"),
},
)
diff --git a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
index fdbcb34f9..fcf562782 100644
--- a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
+++ b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
@@ -111,7 +111,7 @@ export function Session() {
const dimensions = useTerminalDimensions()
const [sidebar, setSidebar] = createSignal<"show" | "hide" | "auto">(kv.get("sidebar", "auto"))
const [conceal, setConceal] = createSignal(true)
- const [showThinking, setShowThinking] = createSignal(true)
+ const [showThinking, setShowThinking] = createSignal(kv.get("thinking_visibility", true))
const [showTimestamps, setShowTimestamps] = createSignal(kv.get("timestamps", "hide") === "show")
const wide = createMemo(() => dimensions().width > 120)
@@ -430,11 +430,15 @@ export function Session() {
},
},
{
- title: "Toggle thinking blocks",
+ title: showThinking() ? "Hide thinking" : "Show thinking",
value: "session.toggle.thinking",
category: "Session",
onSelect: (dialog) => {
- setShowThinking((prev) => !prev)
+ setShowThinking((prev) => {
+ const next = !prev
+ kv.set("thinking_visibility", next)
+ return next
+ })
dialog.clear()
},
},