Skip to content

Commit 7ae7440

Browse files
authored
Fix inconsistent descriptions in slash commands (#5388)
1 parent f96021f commit 7ae7440

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

webview-ui/src/utils/context-mentions.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,14 @@ import { mentionRegex } from "@roo/context-mentions"
66

77
import { escapeSpaces } from "./path-mentions"
88

9+
/**
10+
* Gets the description for a mode, prioritizing description > whenToUse > roleDefinition
11+
* and taking only the first line
12+
*/
13+
function getModeDescription(mode: ModeConfig): string {
14+
return (mode.description || mode.whenToUse || mode.roleDefinition).split("\n")[0]
15+
}
16+
917
export interface SearchResult {
1018
path: string
1119
type: "file" | "folder"
@@ -137,13 +145,13 @@ export function getContextMenuOptions(
137145
type: ContextMenuOptionType.Mode,
138146
value: result.item.original.slug,
139147
label: result.item.original.name,
140-
description: (result.item.original.whenToUse || result.item.original.roleDefinition).split("\n")[0],
148+
description: getModeDescription(result.item.original),
141149
}))
142150
: modes.map((mode) => ({
143151
type: ContextMenuOptionType.Mode,
144152
value: mode.slug,
145153
label: mode.name,
146-
description: (mode.description || mode.whenToUse || mode.roleDefinition).split("\n")[0],
154+
description: getModeDescription(mode),
147155
}))
148156

149157
return matchingModes.length > 0 ? matchingModes : [{ type: ContextMenuOptionType.NoResults }]

0 commit comments

Comments
 (0)