diff options
| author | Alex Yaroshuk <[email protected]> | 2026-02-28 09:18:14 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-02-27 19:18:14 -0600 |
| commit | 2a2082233d9e8bda4674ce596f04b61b3b32522d (patch) | |
| tree | cad66bfed2c858fedd86e1fcc813e10c09d23e99 /packages | |
| parent | 267d2c82dec8fb03bd290b69cbfa6cc30ab27647 (diff) | |
| download | opencode-2a2082233d9e8bda4674ce596f04b61b3b32522d.tar.gz opencode-2a2082233d9e8bda4674ce596f04b61b3b32522d.zip | |
fix(app): display skill name in skill tool call (#15413)
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/ui/src/components/message-part.tsx | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/packages/ui/src/components/message-part.tsx b/packages/ui/src/components/message-part.tsx index 5c110ccd6..6b6dfe2e5 100644 --- a/packages/ui/src/components/message-part.tsx +++ b/packages/ui/src/components/message-part.tsx @@ -250,6 +250,11 @@ export function getToolInfo(tool: string, input: any = {}): ToolInfo { icon: "bubble-5", title: i18n.t("ui.tool.questions"), } + case "skill": + return { + icon: "brain", + title: input.name || "skill", + } default: return { icon: "mcp", @@ -1900,3 +1905,25 @@ ToolRegistry.register({ ) }, }) + +ToolRegistry.register({ + name: "skill", + render(props) { + const title = createMemo(() => props.input.name || "skill") + const running = createMemo(() => props.status === "pending" || props.status === "running") + + const titleContent = () => <TextShimmer text={title()} active={running()} /> + + const trigger = () => ( + <div data-slot="basic-tool-tool-info-structured"> + <div data-slot="basic-tool-tool-info-main"> + <span data-slot="basic-tool-tool-title" class="capitalize agent-title"> + {titleContent()} + </span> + </div> + </div> + ) + + return <BasicTool icon="brain" status={props.status} trigger={trigger()} hideDetails /> + }, +}) |
