From 0eab152b25323eb532c446557d8c8d528037d383 Mon Sep 17 00:00:00 2001 From: Josh Lambert Date: Mon, 4 May 2026 14:06:42 -0400 Subject: [PATCH] fix: use = for thumbs-up keybind and wrap story providers - Replace + with = in messages_feedback_up: the TUI parser normalizes to 'leader+' and splits on '+', producing an empty key name for '+' so the binding never fires. The = key sits on the same physical key as + on most layouts, pairs visually with -, and parses to a real key name. - Wrap StoryProviders with FeedbackProvider so stories that render VscodeSessionTurn (e.g. Diff Summary Collapsed) don't throw 'useFeedback must be used within a FeedbackProvider' under Storybook visual regression. - Sync changeset and docs page to mention the new keybind. --- .changeset/message-feedback.md | 2 +- .../architecture/per-message-feedback.md | 2 +- .../webview-ui/src/stories/StoryProviders.tsx | 83 ++++++++++--------- packages/opencode/src/config/keybinds.ts | 2 +- 4 files changed, 46 insertions(+), 43 deletions(-) diff --git a/.changeset/message-feedback.md b/.changeset/message-feedback.md index 98d5c5c2215..080c200bd34 100644 --- a/.changeset/message-feedback.md +++ b/.changeset/message-feedback.md @@ -3,4 +3,4 @@ "@kilocode/cli": minor --- -Rate assistant responses with thumbs up/down. Click the thumbs buttons next to the copy button on any assistant message, or press `+` / `-` in the terminal UI. Only shown when telemetry is enabled; feedback is sent to Kilo to help improve model and prompt quality. +Rate assistant responses with thumbs up/down. Click the thumbs buttons next to the copy button on any assistant message, or press `=` / `-` in the terminal UI. Only shown when telemetry is enabled; feedback is sent to Kilo to help improve model and prompt quality. diff --git a/packages/kilo-docs/pages/contributing/architecture/per-message-feedback.md b/packages/kilo-docs/pages/contributing/architecture/per-message-feedback.md index b638dba13d2..834906dc84e 100644 --- a/packages/kilo-docs/pages/contributing/architecture/per-message-feedback.md +++ b/packages/kilo-docs/pages/contributing/architecture/per-message-feedback.md @@ -24,7 +24,7 @@ Add a thumbs-up / thumbs-down widget next to the existing copy button on every a | Surface | Approach | |---|---| | VS Code extension | Thumbs buttons inline next to the copy button | -| TUI | Keybinds (`+` / `-`) on the last assistant message | +| TUI | Keybinds (`=` / `-`) on the last assistant message | ### Telemetry Payload diff --git a/packages/kilo-vscode/webview-ui/src/stories/StoryProviders.tsx b/packages/kilo-vscode/webview-ui/src/stories/StoryProviders.tsx index 19cbdf09610..e3b1fc5e136 100644 --- a/packages/kilo-vscode/webview-ui/src/stories/StoryProviders.tsx +++ b/packages/kilo-vscode/webview-ui/src/stories/StoryProviders.tsx @@ -13,6 +13,7 @@ import { createSignal, createMemo, type ParentComponent } from "solid-js" import { VSCodeProvider } from "../context/vscode" import { ServerProvider } from "../context/server" +import { FeedbackProvider } from "../context/feedback" import { ProviderContext } from "../context/provider" import { flattenModels, findModel as _findModel } from "../context/provider-utils" import { ConfigProvider, ConfigContext } from "../context/config" @@ -318,46 +319,48 @@ export const StoryProviders: ParentComponent = (props) => { return ( - - - - - "" as any, - t, - }} - > - "en", t }}> - - - - - - - - - {props.noPadding ? ( - props.children - ) : ( -
{props.children}
- )} -
-
-
-
-
-
-
-
-
-
-
-
-
-
+ + + + + + "" as any, + t, + }} + > + "en", t }}> + + + + + + + + + {props.noPadding ? ( + props.children + ) : ( +
{props.children}
+ )} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
) diff --git a/packages/opencode/src/config/keybinds.ts b/packages/opencode/src/config/keybinds.ts index 01860c12d3d..34cc8d27d81 100644 --- a/packages/opencode/src/config/keybinds.ts +++ b/packages/opencode/src/config/keybinds.ts @@ -52,7 +52,7 @@ const KeybindsSchema = Schema.Struct({ messages_undo: keybind("u", "Undo message"), messages_redo: keybind("r", "Redo message"), // kilocode_change start - message feedback - messages_feedback_up: keybind("+", "Rate last assistant message helpful"), + messages_feedback_up: keybind("=", "Rate last assistant message helpful"), messages_feedback_down: keybind("-", "Rate last assistant message not helpful"), // kilocode_change end messages_toggle_conceal: keybind("h", "Toggle code block concealment in messages"),